首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails主动管理评审用户帖子

Rails主动管理评审用户帖子
EN

Stack Overflow用户
提问于 2015-10-27 19:22:39
回答 1查看 247关注 0票数 1

我想让管理员检查描述。因此,每当用户发布描述管理可以批准或拒绝它。如果获得批准,它将显示在索引页上。目前,用户可以添加描述,但管理员无法对其进行审查。有什么办法我能做到吗?

index.html.erb

代码语言:javascript
复制
<% @posts.each do |post| %>
  <p> <%= post.description %> </p>
<% end %>

管理/post.rb

代码语言:javascript
复制
ActiveAdmin.register Post do
  permit_params :description

  index do
    id_column
    column :description
  end

  form do |f|
    f.inputs do
      f.input :description
    end
    f.actions
  end
end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-27 19:56:45

添加新的布尔字段到post中,名为reviewed,默认值为false:

代码语言:javascript
复制
class AddReviewedToPosts < ActiveRecord::Migration
  def self.up
    add_column :posts, :reviewed, :boolean, default: false
  end

  def self.down
    remove_column :posts, :reviewed
  end
end

然后在AA上的索引页下创建一个按钮,将其设置为评审:

代码语言:javascript
复制
index do
  id_column
  column :description
  column "" do |post|
    link_to 'Mark as reviewed', admin_posts_reviewed_path(post)
  end
end

最后一件事是在admin/posts.rb上创建一个经过审查的操作

代码语言:javascript
复制
def reviewed
  @post = Post.find(params[:id])
  if @post.present?
    @post.update_attribute(:reviewed, true)
    flash[:notice] = 'Post marked as reviewed'        
  else
    flash[:error] = 'Could not find post'
  end

  redirect_to admin_posts_path
end

别忘了把这个动作添加到routes.rb!

现在,如果布尔字段为true,则可以显示它。

代码是没有测试的,这是从我的头脑。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33376783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档