cot 0.6.0

The Rust web framework for lazy developers.
Documentation
//! Generated by cot CLI 0.3.1 on 2025-07-31 18:09:45+00:00

#[derive(Debug, Copy, Clone)]
pub(crate) struct Migration;
impl ::cot::db::migrations::Migration for Migration {
    const APP_NAME: &'static str = "cot_session";
    const MIGRATION_NAME: &'static str = "m_0001_initial";
    const DEPENDENCIES: &'static [::cot::db::migrations::MigrationDependency] = &[];
    const OPERATIONS: &'static [::cot::db::migrations::Operation] =
        &[::cot::db::migrations::Operation::create_model()
            .table_name(::cot::db::Identifier::new("cot__session"))
            .fields(&[
                ::cot::db::migrations::Field::new(
                    ::cot::db::Identifier::new("id"),
                    <cot::db::Auto<i32> as ::cot::db::DatabaseField>::TYPE,
                )
                .auto()
                .primary_key()
                .set_null(<cot::db::Auto<i32> as ::cot::db::DatabaseField>::NULLABLE),
                ::cot::db::migrations::Field::new(
                    ::cot::db::Identifier::new("key"),
                    <String as ::cot::db::DatabaseField>::TYPE,
                )
                .set_null(<String as ::cot::db::DatabaseField>::NULLABLE)
                .unique(),
                ::cot::db::migrations::Field::new(
                    ::cot::db::Identifier::new("data"),
                    <String as ::cot::db::DatabaseField>::TYPE,
                )
                .set_null(<String as ::cot::db::DatabaseField>::NULLABLE),
                ::cot::db::migrations::Field::new(
                    ::cot::db::Identifier::new("expiry"),
                    <chrono::DateTime<chrono::FixedOffset> as ::cot::db::DatabaseField>::TYPE,
                )
                .set_null(
                    <chrono::DateTime<chrono::FixedOffset> as ::cot::db::DatabaseField>::NULLABLE,
                ),
            ])
            .build()];
}

#[derive(::core::fmt::Debug)]
#[::cot::db::model(model_type = "migration")]
struct _Session {
    #[model(primary_key)]
    pub(crate) id: cot::db::Auto<i32>,
    #[model(unique)]
    pub(crate) key: String,
    pub(crate) data: String,
    pub(crate) expiry: chrono::DateTime<chrono::FixedOffset>,
}