ruby-on-rails - Mongoid 5.0 - Rails 4 - 收集表格 has_many

标签 ruby-on-rails ruby ruby-on-rails-4 mongoid

在 mongoid 中使用 has_many 时无法获取表单工作宽度集合

模型线:

class Line
  include Mongoid::Document
  include Mongoid::Timestamps

  field :observations
  field :position, :type => Integer
  field :status, :type => Integer

  has_many :unities, :inverse_of => :unity
end

模型统一:

class Unity
  include Mongoid::Document
  include Mongoid::Timestamps      
  field :prefix, type: Integer
  field :owner_name
  field :owner_email
  field :owner_phone
  field :document      
  field :license
  field :color
  field :active, type: Mongoid::Boolean, default: false
  field :qrx, type: Mongoid::Boolean, default: false
  belongs_to :line, index: true
end

我的表格是:

<%= bootstrap_form_for @line do |f| %>
    <div class="col-md-2">      
        <%= f.collection_select :unity_id, Unity.all, :id, :title %>
    </div>
<% end %>

我收到此错误:# 的未定义方法“unity_id”

最佳答案

你的表格有问题:

<%= bootstrap_form_for @line do |f| %>
    <div class="col-md-2">      
        <%= f.collection_select :unity_id, Unity.all, :id, :title %>
    </div>
<% end %>

@line 有很多单位,它没有 unity_id 字段。您也没有在 Line 模型中定义 title 字段。

也许你可以这样做:

<%= bootstrap_form_for @unity do |f| %>
    <div class="col-md-2">      
        <%= f.collection_select :line_id, Line.all, :id, :owner_name %>
    </div>
<% end %>

关于ruby-on-rails - Mongoid 5.0 - Rails 4 - 收集表格 has_many,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32718579/

相关文章:

ruby-on-rails - 在 Ruby if 条件下使用正则表达式

ruby-on-rails - Rspec 没有路由匹配

ruby-on-rails - gmail 阻止 Rails 应用程序发送电子邮件

ruby-on-rails - 如何获取 RestClient 执行一个方法所花费的时间?

ruby-on-rails - rails 中的私有(private)协会

ruby-on-rails - 如何全局忽略 UTF-8 字符串中的无效字节序列?

ruby-on-rails - Rails 类表继承 gem、仿继承和缺失方法

ruby-on-rails - Rails 路由 : format constraints when none is specified

ruby-on-rails-4 - EventSource 调用 ActionController::Live 挂起

ruby-on-rails - RSpec 不加载我的类,即使它在 Rails 控制台中加载