关于若依Python(Django-Vue-Admin)的一些设置

Django-Vue-Admin 是一套全部开源的快速开发平台,毫无保留给个人及企业免费使用。

  • 前端采用ruoyi-ui 、Vue、Element UI。
  • 后端采用Python语言Django框架。
  • 权限认证使用Jwt,支持多终端认证系统。
  • 支持加载动态权限菜单,多方式轻松权限控制。

1.恢复原生的admin后台:

系统并没有包含原生的admin后台界面,开发过程中如果要看数据在没有和前端对接的情况下要看数据智能通过数据库管理工具链接数据库查看,这个就很蛋疼了。要开启原生的admin后台也简单:

1)修改installed_apps,添加admin:

INSTALLED_APPS = [
    'simpleui',#效果更直观
    'django.contrib.admin',
]

2)创建admin.py注册相关model:

from django.contrib import admin

# Register your models here.
from django.contrib.auth.admin import UserAdmin

# Register your models here.
from .models import *

admin.site.register(Users, UserAdmin)


# admin.site.register(Post)

@admin.register(Post)
class PostAdmin(admin.ModelAdmin):
    list_display = ['id', 'name', 'code', 'sort']

2.无法通过python manage.py createsuperuser:由于系统修改了用户认证model并且没有实现 用户管理类,直接通过前面的命令创建用户就报错了。要修复这个问题,首先创建用户管理类:

1)在models中添加:

class MyUserManager(BaseUserManager):

    def create_user(self, username,email, password=None,is_active=True,is_staff=False,is_admin=False):
        """
        Creates and saves a User with the given email and password.
        """
        if not username:
            raise ValueError('Users must have an username')

        user = self.model(
            username=username,
        )

        user.set_password(password)
        if email:
            user.email  = self.normalize_email(email)
        user.save(using=self._db)
        return user

    def create_staffuser(self, username,email, password):
        """
        Creates and saves a staff user with the given email and password.
        """
        user = self.create_user(
            username,
            email,
            password=password,
        )
        user.staff = True
        user.save(using=self._db)
        return user

    def create_superuser(self, username,email, password):
        """
        Creates and saves a superuser with the given email and password.
        """
        user = self.create_user(
            username,
            email,
            password=password,
        )
        user.staff = True
        user.admin = True
        user.save(using=self._db)
        return user

2)在user中添加:

objects = MyUserManager()

现在就可以正常通过命令创建superuser了。

 

 


分享文章:

猜你喜欢:

3 comments

  1. Google Chrome 106 Google Chrome 106 Mac OS X 10.15 Mac OS X 10.15 China浙江省杭州市 华数宽带 ip address 58.101.*.*

    我到现在还没用过 vue, 还是 jquery 的水平。

  2. Google Chrome 104 Google Chrome 104 Windows 10 Windows 10 China广东省深圳市 电信 ip address 113.108.*.*

    smile kiss您好~我是腾讯云开发者社区运营,关注了您分享的技术文章,觉得内容很棒,我们诚挚邀请您加入腾讯云自媒体分享计划。完整福利和申请地址请见:https://cloud.tencent.com/developer/support-plan
    作者申请此计划后将作者的文章进行搬迁同步到社区的专栏下,你只需要简单填写一下表单申请即可,我们会给作者提供包括流量、云服务器等,另外还有些周边礼物。 smile

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注