以管理员身份使用时会发生什么?

莫斯塔法·侯赛因

在实际使用的Rails 3中,它基于3.1,所以它有点旧,因为当我尝试分配admin而又没有使其免费进行大量分配时,我正在使用3.2.12,这会引发错误,并且那是因为3.1和3.2之间的区别(正如作者所说) 。所以最好使用以下哪一项以及有什么区别?

控制器中的第一种方法

  def create
    @user = User.new(params[:user], :as => :admin)
    if @user.save
        flash[:notice] = "User has been created."
        redirect_to admin_users_path
    else
        flash[:alert] = "User has not been created."
        render :action => "new"
    end
  end

并在模型中

 attr_accessible :email, :password, :admin, :as => :admin

控制器中的第二种方法

   def create
    @user = User.new(params[:user], :without_protection => true)
    @user.admin = params[:user][:admin] == "1"
    if @user.save
        flash[:notice] = "User has been created."
        redirect_to admin_users_path
    else
        flash[:alert] = "User has not been created."
        render :action => "new"
    end
  end

而不在模型中添加上面的线

哪一个可以避免大规模分配,或者两者都是免费的?

双方attr_accessible:without_protection => true可以用来让他们在定义的模型的属性,质量分配。

所以最好使用以下哪一项以及有什么区别?

要回答这个问题,我想用attr_accessible更好,因为你精确定义你要允许质量分配比哪个属性:without_protection => true开辟了所有属性在你的模型中质量分配。

通常,:without_protection => true如果您确切知道用​​户输入的内容(例如,在播种数据时),则可以通过。但是,对于来自表单的输入(用户输入),您要确切指定允许批量分配的内容。

希望这可以帮助。

更新:

在以下语句中,as您提供选项用于attr_accessible确认email, password and admin仅当用户为时才允许属性admin

attr_accessible :email, :password, :admin, :as => :admin

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

不等待HttpClient使用时会发生什么情况

来自分类Dev

当您从C ++函数返回引用时会发生什么?

来自分类Dev

用户从AppleStore更新应用时会发生什么

来自分类Dev

为什么在管理员用户中以管理员身份运行?

来自分类Dev

为什么在使用repaint()而不是与getParent()。repaint()一起使用时会发生此Swing错误?

来自分类Dev

为什么在使用repaint()而不是与getParent()。repaint()一起使用时会发生此Swing错误?

来自分类Dev

尝试使用Java捕获-发生异常时会发生什么?

来自分类Dev

为什么禁用“以管理员身份运行该程序”?

来自分类Dev

为什么我不能安装“以管理员身份打开”?

来自分类Dev

使用管理员身份登录后重定向到管理员页面

来自分类Dev

当我将 System.Threading.Timer 与 TimerTrigger 一起使用时会发生什么?

来自分类Dev

暂停时会发生什么?

来自分类Dev

使用Java代码以管理员身份运行cmd

来自分类Dev

使用Runas.exe以管理员身份运行命令

来自分类Dev

使用RDP以管理员身份登录Windows 10

来自分类Dev

使用symfony2以用户身份登录管理员

来自分类Dev

使用Java代码以管理员身份运行cmd

来自分类Dev

当我使用多个模拟时间时会发生什么?

来自分类Dev

当您使用浏览器返回时会发生什么?

来自分类Dev

在python中的str上使用encoding时会发生什么?

来自分类Dev

当__aenter __()使用'async with'失败时会发生什么?

来自分类Dev

在AngularJS中删除ngRepeat使用的对象时会发生什么?

来自分类Dev

尝试使用数组变量时会发生什么

来自分类Dev

当我截断正在使用的文件时会发生什么?

来自分类Dev

使用/ noguiboot参数启动系统时会发生什么?

来自分类Dev

当我使用多个模拟时间时会发生什么?

来自分类Dev

停止使用的服务包时会发生什么

来自分类Dev

如果我的帐户是管理员组的成员,为什么需要以管理员身份运行命令?

来自分类Dev

当一个片段从 backstack 调用时会发生什么?

Related 相关文章

  1. 1

    不等待HttpClient使用时会发生什么情况

  2. 2

    当您从C ++函数返回引用时会发生什么?

  3. 3

    用户从AppleStore更新应用时会发生什么

  4. 4

    为什么在管理员用户中以管理员身份运行?

  5. 5

    为什么在使用repaint()而不是与getParent()。repaint()一起使用时会发生此Swing错误?

  6. 6

    为什么在使用repaint()而不是与getParent()。repaint()一起使用时会发生此Swing错误?

  7. 7

    尝试使用Java捕获-发生异常时会发生什么?

  8. 8

    为什么禁用“以管理员身份运行该程序”?

  9. 9

    为什么我不能安装“以管理员身份打开”?

  10. 10

    使用管理员身份登录后重定向到管理员页面

  11. 11

    当我将 System.Threading.Timer 与 TimerTrigger 一起使用时会发生什么?

  12. 12

    暂停时会发生什么?

  13. 13

    使用Java代码以管理员身份运行cmd

  14. 14

    使用Runas.exe以管理员身份运行命令

  15. 15

    使用RDP以管理员身份登录Windows 10

  16. 16

    使用symfony2以用户身份登录管理员

  17. 17

    使用Java代码以管理员身份运行cmd

  18. 18

    当我使用多个模拟时间时会发生什么?

  19. 19

    当您使用浏览器返回时会发生什么?

  20. 20

    在python中的str上使用encoding时会发生什么?

  21. 21

    当__aenter __()使用'async with'失败时会发生什么?

  22. 22

    在AngularJS中删除ngRepeat使用的对象时会发生什么?

  23. 23

    尝试使用数组变量时会发生什么

  24. 24

    当我截断正在使用的文件时会发生什么?

  25. 25

    使用/ noguiboot参数启动系统时会发生什么?

  26. 26

    当我使用多个模拟时间时会发生什么?

  27. 27

    停止使用的服务包时会发生什么

  28. 28

    如果我的帐户是管理员组的成员,为什么需要以管理员身份运行命令?

  29. 29

    当一个片段从 backstack 调用时会发生什么?

热门标签

归档