我导入了一个包含一对多关系条目的Excel电子表格。例如,企业有一个合法名称,但有多个位置,每个位置都有一个DBA名称。每个DBA位置都有一条记录。我通过输入数据进行过滤,为一个表中的每个合法业务名称创建一个条目,并为每个DBA位置创建一个业务位置条目。我尝试将合法业务的记录ID手动分配到每个DBA业务位置记录中。
这是我的问题。当我尝试以下内容时:
@dba_business.legal_business_id = @legal_business.id
我收到以下错误。
未定义的方法`id' for#< LegalBusiness :: ActiveRecord_Relation:0x007fe1f2cc3770>
我尝试了以下操作,但@ dba_business.legal_business_id最终为空白,而不是将记录ID值放在字段中。
@dba_business.legal_business_id = @legal_business
Legal_Business设置为has_many:dba_business和DBA_business:belongs_to legal_business。
我使用debug.inspect命令查看属性logger.debug "LEGAL BUSINESS: #{@legal_business.inspect}"
,您可以清楚地看到ID字段被定义为属性。
LEGAL BUSINESS: *#<ActiveRecord::Relation [#<LegalBusiness id: 58722, user_id: nil, legal_name:.........*
我使用PostgreSQL 9.3,Rails 4.1,Ruby 2.1.1和rvm。任何建议表示赞赏。
答案 0 :(得分:0)
我建议您阅读:http://nofail.de/2013/10/debugging-rails-applications-in-development/
然后查看您的调试消息:
LEGAL BUSINESS: *#<ActiveRecord::Relation [#<LegalBusiness id: 58722, user_id: nil, legal_name:.........*
提示:通常使用括号[]
在哪里?
答案 1 :(得分:0)
我解决了这个问题。快速复制粘贴的结果。我有一个&#34; @&#34;在错误的地方。
@object = @ Model.create()
它应该是
@object = Model.create()