Django 权限认证 编写 -- 根据不同的用户,设置不同的显示和访问权限

示意图:
用户权限

html:(模态框等 html和js代码,参考:Django 创建/删除用户

{#  权限管理  #}
    <div id="permissionManageDiv" style="margin-left: 10px; display: none;">
        <div>
            <h4 style="margin-top: 15px;">选择用户</h4>
            <hr style="margin-top: 5px;" />
            <select name="usernamePermission" id="usernamePermission" class="selectpicker" data-live-search="true">
                {% for user in users %}
                    <option value="{
   { user.username }}">{
   { user.username }}</option>
                {% endfor %}
            </select>
            <hr />
        </div>

        <div>
            <h4 style="margin-top: 15px;">勾选权限</h4>
            <hr style="margin-top: 5px;" />
            <div style="margin-bottom: 10px;">
                <div class="input-group input-group-lg" style="float: left; margin-right: 10px;">
                    <span class="input-group-addon">玩家管理</span>
                    <span class="input-group-addon">
                        <input type="checkbox" name="permissionList" value="0" />
                    </span>
                </div>
                <div class="input-group input-group-lg" style="float: left; margin-right: 10px;">
                    <span class="input-group-addon">联盟管理</span>
                    <span class="input-group-addon">
                        <input type="checkbox" name="permissionList" value="1" />
                    </span>
                </div>
                <div class="input-group input-group-lg" style="float: left; margin-right: 10px;">
                    <span 
  • 3
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Django框架中,可以使用Django自带的auth模块来创建用户。通过以下步骤可以创建用户: 1. 在settings.py文件中设置AUTH_USER_MODEL变量,指定自定义用户模型(如果有的话)。 2. 在models.py文件中定义自定义用户模型(如果有的话),并继承AbstractUser类或AbstractBaseUser类。 3. 在views.py或其他地方编写用户注册的逻辑代码,一般是通过表单获取用户输入的信息,然后调用create_user()函数来创建用户。create_user()函数会自动将密码进行加密存储。 例如,下面的代码演示了如何创建一个名为testuser的用户: ``` from django.contrib.auth.models import User user = User.objects.create_user('testuser', password='123456') ``` 要通过permission来设置不同的角色权限,可以按照以下步骤进行操作: 1. 在models.py文件中定义权限,例如: ``` from django.contrib.auth.models import Permission from django.contrib.contenttypes.models import ContentType content_type = ContentType.objects.get_for_model(MyModel) permission = Permission.objects.create( codename='can_view', name='Can view MyModel', content_type=content_type, ) ``` 2. 在views.py或其他地方将权限分配给角色,例如: ``` from django.contrib.auth.models import Group group = Group.objects.create(name='my_group') permission = Permission.objects.get(codename='can_view') group.permissions.add(permission) ``` 3. 在模板中使用{% if user.has_perm %}标签检查用户是否具有某个权限,例如: ``` {% if user.has_perm('myapp.can_view') %} <p>You can view this content.</p> {% endif %} ``` 以上步骤可以根据实际需求进行调整,例如可以通过继承AbstractUser类来自定义用户模型和权限模型,以及使用装饰器或中间件来限制用户的访问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值