diff --git a/offer_backend/apps/accounts/serializers.py b/offer_backend/apps/accounts/serializers.py index d672208..f6202e9 100644 --- a/offer_backend/apps/accounts/serializers.py +++ b/offer_backend/apps/accounts/serializers.py @@ -45,12 +45,17 @@ class UserSerializer(serializers.ModelSerializer): class AdminUserSerializer(serializers.ModelSerializer): """超管用于创建/管理公司管理员账号""" - password = serializers.CharField(write_only=True, min_length=6) + password = serializers.CharField(write_only=True, min_length=6, required=False) class Meta: model = User fields = ['id', 'username', 'email', 'phone', 'role', 'organization', 'password', 'is_active'] + def validate(self, attrs): + if not self.instance and not attrs.get('password'): + raise serializers.ValidationError({'password': '创建用户时密码为必填项'}) + return attrs + def create(self, validated_data): password = validated_data.pop('password') user = User(**validated_data) @@ -58,6 +63,15 @@ class AdminUserSerializer(serializers.ModelSerializer): user.save() return user + def update(self, instance, validated_data): + password = validated_data.pop('password', None) + for attr, value in validated_data.items(): + setattr(instance, attr, value) + if password: + instance.set_password(password) + instance.save() + return instance + class SendCodeSerializer(serializers.Serializer): """发送验证码 serializer""" diff --git a/offer_backend/apps/jobs/serializers.py b/offer_backend/apps/jobs/serializers.py index 596cad3..a91aedf 100644 --- a/offer_backend/apps/jobs/serializers.py +++ b/offer_backend/apps/jobs/serializers.py @@ -18,7 +18,8 @@ class JobDetailSerializer(serializers.ModelSerializer): organization_id = serializers.PrimaryKeyRelatedField( source='organization', queryset=Organization.objects.all(), - write_only=True + write_only=True, + required=False ) class Meta: diff --git a/offer_frontend/src/layouts/AdminLayout.vue b/offer_frontend/src/layouts/AdminLayout.vue index 807a1bd..9e6b520 100644 --- a/offer_frontend/src/layouts/AdminLayout.vue +++ b/offer_frontend/src/layouts/AdminLayout.vue @@ -1,9 +1,9 @@ - - - -
菜单
+ +
+ +
+ +
+
+ + diff --git a/offer_frontend/src/views/SplashView.vue b/offer_frontend/src/views/SplashView.vue index b7497e9..f815b2b 100644 --- a/offer_frontend/src/views/SplashView.vue +++ b/offer_frontend/src/views/SplashView.vue @@ -45,8 +45,8 @@

人才创造美好未来

与优秀的人一起,做有价值的事

-