oswilno/scripts/generate-entries.sh
2023-08-09 15:49:12 +02:00

23 lines
897 B
Bash
Executable File

# set -ex
sea-orm-cli generate entity -v -l --expanded-format -o ./crates/oswilno-contract/src -u postgres://postgres@localhost/oswilno
for f in $( ls ./crates/oswilno-contract/src/*.rs ); do
# bad generated code patch
sed -i 's/db_type().def()/db_type()/g' $f
# actix-admin patch
sed -i 's/pub struct Model {/#[derive(DeriveActixAdmin,DeriveActixAdminModel,DeriveActixAdminViewModel,serde::Serialize)]pub struct Model {#[actix_admin(primary_key)]/g' $f
HAS_ENTITY=$(grep 'for Entity' $f)
if [[ "${HAS_ENTITY}" != "" ]]; then
echo "use actix_admin::prelude::*;" >> $f
echo "impl ActixAdminModelValidationTrait<ActiveModel> for Entity {}" >> $f
echo "impl ActixAdminModelFilterTrait<Entity> for Entity {}" >> $f
fi
done
sed -i 's/pub enum/#[derive(oswilno_actix_admin::ActixAdminEnum,serde::Serialize)] pub enum/g' ./crates/oswilno-contract/src/sea_orm_active_enums.rs
cargo fmt