ruby-on-rails - rails 嵌套模型形成 has_one 关联

标签 ruby-on-rails ruby-on-rails-3 simple-form

我使用 simple_form gem,我需要做一个嵌套表单,但我在这里遇到了一些代码:

我有两个模型:

应用程序:

class Apiphone < ActiveRecord::Base
  attr_accessible :key, :phone
  validates_presence_of :phone
  belongs_to :store
end

商店:
class Store < ActiveRecord::Base
  has_one :apiphone
  accepts_nested_attributes_for :apiphone
end

在我看来:
<%= simple_form_for [@group,@store] do |f| %>
    <%= f.simple_fields_for :apiphone do |ph| %>
      <%= ph.input :phone %>
    <% end %>
<% end %>

但什么都没有显示,有什么想法吗?

最佳答案

使用 fields_for结合 accepts_nested_attributes假设记录已初始化。这意味着,使用您的模型,@store.apiphone不应该是 nil表格生成时。解决此问题的方法是确保 apiphone已初始化并关联到 @store (新建和编辑操作)。

def new
  @store = Store.new
  @store.build_apiphone
end

关于ruby-on-rails - rails 嵌套模型形成 has_one 关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18437839/

相关文章:

ruby-on-rails - 如何将 AngularJS 与 Rails 表单一起使用?

ruby-on-rails - Rails - 这安全吗?使用 URL 参数查询数据库?

ruby-on-rails - cakephp 或 ruby​​ on rails

ruby-on-rails - 在开发 Web 应用程序时,您何时会使用图形数据库与文档数据库?

ruby-on-rails - Rails 的问题包括查询

ruby-on-rails - Ruby on Rails 路线说明

ruby-on-rails - Ruby On Rails 指南中名为 'Layouts and Rendering in Rails' 的 :alert (or :notice) with the render method, 的使用对我不起作用:

ruby-on-rails - 使用 fields_for 的 Rails 错误消息

ruby-on-rails - Rails 中 "each .. do"或 "for .. in"循环之间的差异

jquery - 验证检查带有单独提交按钮的动态文本框