Bump sea orm

This commit is contained in:
Adrian Woźniak 2023-09-15 17:07:22 +02:00
parent 1fc74988cf
commit 5e25d81308
12 changed files with 708 additions and 44 deletions

707
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -63,7 +63,7 @@ pub fn derive_actix_admin_enum(item: TokenStream) -> TokenStream {
parse_enum_variants(&mut it, &mut def);
let mut buffer = String::new();
buffer.push_str(&format!("impl std::str::FromStr for {} {{\n type Err = ();\n fn from_str(s: &str) -> Result<Self, ()> {{\n match s {{\n", def.name));
for v in def.variants {
for v in &def.variants {
buffer.push_str(&format!(
" {:?} => Ok({}::{}),\n",
v.db_name, def.name, v.rs_name
@ -71,6 +71,14 @@ pub fn derive_actix_admin_enum(item: TokenStream) -> TokenStream {
}
buffer.push_str(" _ => Err(()),\n");
buffer.push_str(" }\n }\n}");
buffer.push_str(&format!("impl ToString for {} {{\n fn to_string(&self) -> String {{\n match self {{\n", def.name));
for v in def.variants {
buffer.push_str(&format!(
" {}::{} => {:?},\n",
def.name, v.rs_name, v.db_name
));
}
buffer.push_str(" }.to_string()\n }\n}");
// eprintln!("{buffer}");
buffer.as_str().parse().unwrap()
}

View File

@ -4,9 +4,9 @@ version = "0.1.0"
edition = "2021"
[dependencies]
actix-admin = "0.5.0"
# actix-admin = "0.5.0"
# actix-admin = { git = "https://github.com/Eraden/actix-admin.git", features = ['enable-tracing'] }
#actix-admin = { git = "https://code.ita-prog.pl/Tsumanu/actix-admin.git", features = ['enable-tracing'] }
actix-admin = { git = "https://code.ita-prog.pl/Tsumanu/actix-admin.git", features = ['enable-tracing'] }
actix-web = "4.3.1"
actix-web-grants = "3.0.2"
askama = "0.12.0"

View File

@ -5,13 +5,13 @@ edition = "2021"
[dependencies]
actix = "0.13.0"
actix-admin = "0.5.0"
# actix-admin = "0.5.0"
# actix-admin = { git = "https://github.com/Eraden/actix-admin.git", features = ['enable-tracing'] }
# actix-admin = { git = "https://code.ita-prog.pl/Tsumanu/actix-admin.git", features = ['enable-tracing'] }
actix-admin = { git = "https://code.ita-prog.pl/Tsumanu/actix-admin.git", features = ['enable-tracing'] }
actix-rt = { version = "2.8.0", features = [] }
chrono = "0.4.26"
oswilno-actix-admin = { path = "../oswilno-actix-admin" }
regex = "1.9.1"
sea-orm = { version = "0.11", features = ["postgres-array", "runtime-actix-rustls", "sqlx-postgres", "macros", "sqlx"] }
sea-orm = { version = "0.12", features = ["postgres-array", "runtime-actix-rustls", "sqlx-postgres", "macros", "sqlx"] }
serde = { version = "1.0.175", features = ["derive"] }
uuid = { version = "1.4.1", features = ["v4"] }

View File

@ -3,6 +3,7 @@
use super::sea_orm_active_enums::Userrole;
use actix_admin::prelude::*;
use sea_orm::entity::prelude::*;
#[allow(unused_imports)]
use sea_orm::Iterable;
#[derive(Copy, Clone, Default, Debug, DeriveEntity)]
@ -31,6 +32,7 @@ pub struct Model {
#[actix_admin(primary_key)]
pub id: i32,
pub login: String,
#[actix_admin(list_hide_column)]
pub pass_hash: String,
pub role: Userrole,
pub banned: bool,
@ -40,6 +42,7 @@ pub struct Model {
pub created_at: DateTime,
#[actix_admin(list_hide_column)]
pub updated_at: DateTime,
#[actix_admin(html_input_type = "email")]
pub email: String,
}

View File

@ -3,6 +3,7 @@
use super::sea_orm_active_enums::ImageState;
use actix_admin::prelude::*;
use sea_orm::entity::prelude::*;
#[allow(unused_imports)]
use sea_orm::Iterable;
#[derive(Copy, Clone, Default, Debug, DeriveEntity)]

View File

@ -2,6 +2,7 @@
use actix_admin::prelude::*;
use sea_orm::entity::prelude::*;
#[allow(unused_imports)]
use sea_orm::Iterable;
#[derive(Copy, Clone, Default, Debug, DeriveEntity)]

View File

@ -2,6 +2,7 @@
use actix_admin::prelude::*;
use sea_orm::entity::prelude::*;
#[allow(unused_imports)]
use sea_orm::Iterable;
#[derive(Copy, Clone, Default, Debug, DeriveEntity)]

View File

@ -3,6 +3,7 @@
use super::sea_orm_active_enums::ParkingSpaceState;
use actix_admin::prelude::*;
use sea_orm::entity::prelude::*;
#[allow(unused_imports)]
use sea_orm::Iterable;
#[derive(Copy, Clone, Default, Debug, DeriveEntity)]
@ -30,7 +31,7 @@ impl EntityName for Entity {
pub struct Model {
#[actix_admin(primary_key)]
pub id: i32,
#[actix_admin(select_list=crate::ParkingSpaceState)]
#[actix_admin(select_list=crate::parking_spaces::ParkingSpaceState)]
pub state: ParkingSpaceState,
pub account_id: i32,
#[actix_admin(list_hide_column)]

View File

@ -2,6 +2,7 @@
use actix_admin::prelude::*;
use sea_orm::entity::prelude::*;
#[allow(unused_imports)]
use sea_orm::Iterable;
#[derive(Debug, Clone, PartialEq, Eq, EnumIter, DeriveActiveEnum)]

View File

@ -10,6 +10,7 @@ use garde::Validate;
use oswilno_view::{Blank, Errors, Lang, Layout, Main, MainOpts, TranslationStorage};
use sea_orm::DatabaseConnection;
use serde::{Deserialize, Serialize};
use sea_orm::prelude::*;
pub use oswilno_view::filters;

View File

@ -14,6 +14,7 @@ for f in $(ls crates/oswilno-contract/src/*.rs); do
case $line in
"use sea_orm::entity::prelude::*;" )
echo "use actix_admin::prelude::*;" >> /tmp/ajosdfjosdpjfojsdfjpajpfa
echo '#[allow(unused_imports)]' >> /tmp/ajosdfjosdpjfojsdfjpajpfa
echo 'use sea_orm::Iterable;' >> /tmp/ajosdfjosdpjfojsdfjpajpfa
;;
*"EntityName for Entity"* )
@ -32,16 +33,23 @@ for f in $(ls crates/oswilno-contract/src/*.rs); do
echo "#[actix_admin(primary_key)]" >> /tmp/ajosdfjosdpjfojsdfjpajpfa
;;
"pub location_id"* )
echo "#[actix_admin(select_list="crate::parking_space_locations::Entity")]" >> /tmp/ajosdfjosdpjfojsdfjpajpfa
echo '#[actix_admin(select_list=crate::parking_space_locations::Entity)]' >> /tmp/ajosdfjosdpjfojsdfjpajpfa
;;
"pub email: String," )
echo '#[actix_admin(html_input_type = "email")]' >> /tmp/ajosdfjosdpjfojsdfjpajpfa
;;
"pub state"* )
echo "#[actix_admin(select_list="crate::ParkingSpaceState")]" >> /tmp/ajosdfjosdpjfojsdfjpajpfa
echo '#[actix_admin(select_list=crate::parking_spaces::ParkingSpaceState)]' >> /tmp/ajosdfjosdpjfojsdfjpajpfa
;;
"pub pass_hash: String," )
echo "#[actix_admin(list_hide_column)]" >> /tmp/ajosdfjosdpjfojsdfjpajpfa
;;
*"_at: DateTime," )
echo "#[actix_admin(list_hide_column)]" >> /tmp/ajosdfjosdpjfojsdfjpajpfa
;;
*"parking_space_id"* )
echo "#[actix_admin(select_list="crate::parking_spaces::Entity")]" >> /tmp/ajosdfjosdpjfojsdfjpajpfa
echo '#[actix_admin(select_list=crate::parking_spaces::Entity)]' >> /tmp/ajosdfjosdpjfojsdfjpajpfa
;;
esac
echo $line >> /tmp/ajosdfjosdpjfojsdfjpajpfa