我正在创建一个 Rails 应用程序,它是一个博客平台,有许多撰稿人。我的用户模型有一个:writer布尔属性来指示特定用户是否有权发布文章。为了防止批量分配,:writer属性未在用户模型的attr_accessible下列出。相反,我想创建一个类似于以下的函数,以允许切换作者权限:
def toggle_writer
if User.find(:id).writer?
User.find(:id).update_attribute(:writer, false)
else
User.find(:id).update_attribute(:writer, true)
end
flash[:success] = "User permissions toggled."
redirect_to admintools_users_path
end
不过,我对这种方法有几个问题:
- 我将如何从视图中调用它?有没有办法通过link_to或button_for调用函数?
- 我会把这样的功能放在哪里?在控制器或助手中?
- 我需要编辑config/routes.rb文件中的任何路由吗?
在此先感谢您的帮助!