Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.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
Sql ActiveRecord的连接表和收集信息[RAILS]_Sql_Ruby On Rails_Ruby_Postgresql_Activerecord - Fatal编程技术网

Sql ActiveRecord的连接表和收集信息[RAILS]

Sql ActiveRecord的连接表和收集信息[RAILS],sql,ruby-on-rails,ruby,postgresql,activerecord,Sql,Ruby On Rails,Ruby,Postgresql,Activerecord,我正在努力寻找从我的模型中获取数据的方法。 我和两个模特之间确实有很多关系。用户和事件。我之所以创建链接表,是因为我需要存储在链接表中的其他信息。问题是我无法从链接表中获取数据 我的型号如下: class User < ActiveRecord::Base has_many :event_users has_many :events, through: :event_users end class Event < ActiveRecord::Base has_ma

我正在努力寻找从我的模型中获取数据的方法。 我和两个模特之间确实有很多关系。用户和事件。我之所以创建链接表,是因为我需要存储在链接表中的其他信息。问题是我无法从链接表中获取数据

我的型号如下:

class User < ActiveRecord::Base
  has_many :event_users
  has_many :events, through: :event_users
end


class Event < ActiveRecord::Base
    has_many :event_users
    has_many :users, through: :event_users
end
我试图通过控制台测试这一点。首先,我有数据库中的数据。我试图收集这些数据,以便稍后在表中显示

我试过:

User.joins(:events).select('*')
但它给了我一个混合的数据。但它不提供位于链接表event_用户上的position字段

如果可能的话,我想通过查询获得数据。提前谢谢

试试这个:

users = User.joins(event_users: :event)

users.select("event_users.position")

那么你想要所有用户和所有事件?不,对不起,我想要用户信息、事件用户信息和事件信息。这实际上取决于你想如何使用它-因为你可以使用User.all.each{| User | User.events}我只是想收集数据,稍后将其放在一个表中。我想查看来自表event|u users以及users infos的信息这给了我以下错误:[145]prymain>users.each{user|user | user.event|u users.position}NoMethodError:undefined method position',对于`@Nikos4Life,我已经更新了答案,你能试一下吗?不起作用:/[156]prymain>users=User.joinsevent_users::events=>@Nikos4Life有一个打字错误。。users=User.joinsevent\u users::事件尝试此[164]prymain>users=User.joinsevent\u users::event=>用户加载0.5ms选择用户。*从用户内部加入事件\u事件上的用户。用户\u id=users.id事件上的内部加入事件。id=event\u用户。event\u id用户加载0.5ms选择用户。*从用户内部加入事件\u事件上的用户。用户\u id=users.id事件上的内部加入事件。id=事件\用户。事件\ id[
User.joins(:events).select('*')
users = User.joins(event_users: :event)

users.select("event_users.position")