在我的应用中,用户可以为产品撰写评论。但在发布评论之前,管理员需要接受或拒绝评论(允许用户更改评论)。
为了管理验证部分,我在控制器中创建了validate
方法。Reviews
管理员在新评论附近有两个按钮(链接):接受、拒绝。该按钮重定向到validate#reviews
并发送适当的参数:review_id
和admin_action
(接受或拒绝)。
如何创建按钮(链接)的路径?
我尝试了很多组合,link_to "accept", polymorphic_path([review, :validate => 'accep'])
但没有成功。我很难弄清楚 URL 应该是什么样子!当然,我get 'reviews/validate'
之前加过routes.rb。
如果你有类似的情况,你是怎么做的?有最佳实践吗?
更新
我也试过link_to "Accept", polymorphic_path(:reviews => review, :validate => 'accept')
了,但提供了一个 Nil 位置。无法构建 URI。
更新 2
我想使用该validate
方法(而不是创建两个方法accept
and reject
),因为有常见的数据处理,例如获取评论,检查管理员身份验证,...
所以,在我的控制器中,我正在寻找类似的东西:
def activate
# Get review, using review_id
# Check in the admin has the right to validate the review
# Execute the correct action: accept or reject.
end
private
def accept
...
end
def reject
...
end
提前致谢。