ActiveAdmin:在对象创建时添加关联关系
创始人
2024-07-24 05:30:28
0
  1. 首先,我们需要在ActiveAdmin资源中使用form_for方法来定义表单。我们可以使用f.inputs方法来组织表单字段。在这里,我们要添加与另一个模型的关联字段。如果我们想要在创建或更新对象时添加关联,我们可以使用f.input方法和:collection选项来定义下拉列表。
ActiveAdmin.register Post do
  # ...
  form do |f|
    f.inputs do
      f.input :title
      f.input :body
      f.input :category, as: :select, collection: Category.all
    end
    f.actions
  end
end
  1. 在这个示例中,我们添加了一个下拉列表,显示存储在另一个模型中的类别。当我们创建一个新的帖子时,我们可以选择一个类别,并将其与帖子相关联。
class Post < ActiveRecord::Base
  belongs_to :category
end

class Category < ActiveRecord::Base
  has_many :posts
end
  1. 在此处指定的关联,可以在posts表中的category_id字段中保存。当我们创建一个新的帖子时,必须选择一个类别,并在提交表单时将其保存。默认情况下,在提交表单时自动保存对象。如果出现错误,ActiveAdmin会向我们显示有关错误的消息。

总之,我们可以通过使用form_for和f.input方法在对象创建时添加关联关系。

相关内容

热门资讯

Android Recycle... 要在Android RecyclerView中实现滑动卡片效果,可以按照以下步骤进行操作:首先,在项...
安装apache-beam==... 出现此错误可能是因为用户的Python版本太低,而apache-beam==2.34.0需要更高的P...
Android - 无法确定任... 这个错误通常发生在Android项目中,表示编译Debug版本的Java代码时出现了依赖关系问题。下...
Android - NDK 预... 在Android NDK的构建过程中,LOCAL_SRC_FILES只能包含一个项目。如果需要在ND...
Alertmanager在pr... 首先,在Prometheus配置文件中,确保Alertmanager URL已正确配置。例如:ale...
Akka生成Actor问题 在Akka框架中,可以使用ActorSystem对象生成Actor。但是,当我们在Actor类中尝试...
Agora-RTC-React... 出现这个错误原因是因为在 React 组件中使用,import AgoraRTC from “ago...
Aksnginxdomainb... 在AKS集群中,可以使用Nginx代理服务器实现根据域名进行路由。以下是具体步骤:部署Nginx i...
AddSingleton在.N... 在C#中创建Singleton对象通常是通过私有构造函数和静态属性来实现,例如:public cla...
apache子目录二级域名 Apache是一款流行的Web服务器软件,它允许用户使用子目录作为二级域名。使用Apache作为服务...