Skip to main content

modo_session/
entity.rs

1#[modo_db::entity(table = "modo_sessions")]
2#[entity(framework)]
3#[entity(index(columns = ["token_hash"], unique))]
4#[entity(index(columns = ["user_id"]))]
5#[entity(index(columns = ["expires_at"]))]
6pub struct Session {
7    #[entity(primary_key, auto = "ulid")]
8    pub id: String,
9    pub token_hash: String,
10    pub user_id: String,
11    pub ip_address: String,
12    #[entity(column_type = "Text")]
13    pub user_agent: String,
14    pub device_name: String,
15    pub device_type: String,
16    pub fingerprint: String,
17    #[entity(column_type = "Text")]
18    pub data: String,
19    pub created_at: modo_db::chrono::DateTime<modo_db::chrono::Utc>,
20    pub last_active_at: modo_db::chrono::DateTime<modo_db::chrono::Utc>,
21    pub expires_at: modo_db::chrono::DateTime<modo_db::chrono::Utc>,
22}