Python Django添加superuser

from django.contrib.auth.models import User
user=User.objects.create_superuser('name','emailname@demon.com','password')

第一个为用户名,第二个是邮箱,第三是密码

用这个方法可能会出错,系统环境变量中添加DJANGO_SETTINGS_MODULE变量,将其值设置为mysite.settings(mysite为工作目录中的project名称)

添加PYTHONPATH:D:\\python27;F:\workforce\python
(F:\workforce\python为python project的工作目录)
再运行,可能还有错,我用Django+Mysql,我没搞明白为什么还是错,但用户是建立成功了,懒得理它了。
另外:

官方:http://docs.djangoproject.com/en/dev/topics/auth/#topics-auth-creating-superusers

manage.py createsuperuser --username=joe --email=joe@example.com

You will be prompted for a password. After you enter one, the user will be
created immediately.
### 如何用Python Django创建管理系统 #### 创建Django项目并设置应用 为了构建一个高效的管理系统,首先需要初始化一个新的Django项目。通过命令行工具执行如下操作: ```bash django-admin startproject my_management_system cd my_management_system python manage.py startapp management_app ``` 这会建立基本的文件夹结构来支持后续开发工作。 #### 定义模型与数据库迁移 在`management_app/models.py`中定义数据表结构,例如对于教师和学生的身份验证可以参照以下方式[^1]: ```python from django.db import models from django.contrib.auth.models import AbstractUser class User(AbstractUser): is_student = models.BooleanField(default=False) is_teacher = models.BooleanField(default=False) class Student(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True) # 添加其他字段... class Teacher(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True) # 添加其他字段... ``` 完成模型编写之后运行迁移指令使更改生效: ```bash python manage.py makemigrations python manage.py migrate ``` #### 设置用户权限控制逻辑 针对不同类型的用户(如学生、老师),可以在视图函数内部加入条件判断语句以区分访问权限。也可以利用Django内置装饰器简化此过程[^3]: ```python from django.shortcuts import render from django.contrib.auth.decorators import login_required, user_passes_test def student_required(function=None, redirect_field_name='next', login_url='login'): actual_decorator = user_passes_test( lambda u: u.is_authenticated and (u.is_student or u.is_superuser), login_url=login_url, redirect_field_name=redirect_field_name ) if function: return actual_decorator(function) return actual_decorator @login_required(login_url='/accounts/login/') @student_required() def student_dashboard(request): context = {} template = "student/dashboard.html" return render(request, template, context) # 对于教师同样适用上述模式调整相应参数即可。 ``` #### 自定义管理后台界面 如果希望进一步优化默认提供的admin站点样式,则可借鉴FeinCMS的做法,在`admin.py`里修改注册类的相关属性或方法实现个性化需求[^2]: ```python from django.contrib import admin from .models import CustomModel @admin.register(CustomModel) class CustomModelAdmin(admin.ModelAdmin): list_display = ('field_1', 'field_2') # 显示列表页列名 search_fields = ['field_1'] # 可搜索字段 ordering = ['-created_at'] # 排序依据 fieldsets = ( ("基本信息", { 'fields': ('field_1',) }), ("高级选项", { 'classes': ('collapse',), # 折叠显示部分区域 'fields': ('field_2', ), }) ) ``` 以上就是使用Python Django搭建简单管理系统的主要步骤概述,具体实施过程中还需考虑更多细节问题比如安全性加固等方面的内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值