Skip to main content

model

Macro model 

Source
macro_rules! model {
    (
        table: $table_name:expr,
        $(timestamps: $ts:expr,)?
        $(soft_deletes: $sd:expr,)?
        $(fillable: [ $($fill:ident),* ],)?
        $(guarded: [ $($guard:ident),* ],)?
        $(scopes: {
            $( $scope_name:ident ( $($arg_name:ident : $arg_type:ty),* ) => $scope_body:expr ),* $(,)?
        },)?
        $(global_scopes: {
            $( $gs_name:ident => $gs_body:expr ),* $(,)?
        },)?
        $(relations: {
            $( $relation_name:ident ( $rel_type:ident, foreign_key: $fk:ident, local_key: $lk:ident ) => $related_model:path ),* $(,)?
        },)?
        Model {
            $($(#[$field_meta:meta])* $field_vis:vis $field_name:ident : $field_type:ty),* $(,)?
        }
    ) => { ... };
}