Skip to main content
 首页 » 编程设计

python之Django 相当于 Rails cancan 和 devise

2024年11月01日22三少

前段时间我用django做项目然后切换到rails。我在 rails 中发现了很多很酷的东西。我需要将一些功能添加回 Django 项目。

Are there  Django equivalent of Rails cancan and devise ? 
Is there  Django equivalent of Rails scheduler gem? 

更新

对于 django 权限框架,我必须在每个 View 中指定类似的内容

@permission_required('polls.can_vote') 
def my_view 

我更喜欢 cancan 的方式,我可以在一个地方管理所有权限

  include CanCan::Ability 
 
  def initialize(user) 
    user ||= User.new # guest user (not logged in) 
    if user.has_role? :admin 
      can :manage, :all 
    else 
      can :manage, :all       
      cannot :users, Swimming::Student 
    end    
  end 

请您参考如下方法:

你可以尝试使用 Django 的内置 permission framework而不是 cancan 和 devise。它是否符合您的需求?

Celery在使用 Django 时,这可能是延迟和调度的最佳选择。有 django-celery将 Celery 与 Django 集成的包。