Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 4 RubyonRails';有许多';关系错误:未定义的方法_Ruby On Rails 4_Associations_Models - Fatal编程技术网

Ruby on rails 4 RubyonRails';有许多';关系错误:未定义的方法

Ruby on rails 4 RubyonRails';有许多';关系错误:未定义的方法,ruby-on-rails-4,associations,models,Ruby On Rails 4,Associations,Models,我一直在犯这个错误 未定义的方法“concerts” ActiveRecord::Relation::ActiveRecord\关系\艺术家:0xb50b691c> 尝试执行此操作时: <% @artists = Artist.where(name: "Test") %> <% @concertTest = @artists.concerts %> #this line raises the error #这一行引发了错误 以下是我的模型: class Conc

我一直在犯这个错误

未定义的方法“concerts” ActiveRecord::Relation::ActiveRecord\关系\艺术家:0xb50b691c>

尝试执行此操作时:

<% @artists = Artist.where(name: "Test") %> 

<% @concertTest = @artists.concerts %> #this line raises the error

#这一行引发了错误
以下是我的模型:

class Concert < ActiveRecord::Base

    validates_presence_of :venue
    validates_presence_of :date

    has_many :reviews
    belongs_to :artist
end

class Artist < ActiveRecord::Base

    validates_presence_of :name
    has_many :concerts

end
classconcert

我似乎不知道是什么原因导致了这个错误,为什么我不能以这种方式引用某位艺术家的演唱会。有什么建议吗?谢谢

当我这样做时,它会起作用。按你的名字而不是。在哪里查找

<% @artists = Artist.find_by_name("Test") %>
<% @concertTest = @artists.concerts %>

我不确定原因,但也许有人可以发表评论来澄清。

请这样尝试:

<% @artists = Artist.where(name: "Test").first %> 

<% @concertTest = @artists.concerts %> 

注意:-
其中
将返回
活动记录关系
数组