Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.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/sqlite/3.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 如何从联接中获取嵌套哈希?_Ruby_Sqlite_Sequel - Fatal编程技术网

Ruby 如何从联接中获取嵌套哈希?

Ruby 如何从联接中获取嵌套哈希?,ruby,sqlite,sequel,Ruby,Sqlite,Sequel,我正在使用Sequel从SQLite数据库中读取行。不需要写东西 我使用的是基本联接。考虑这一点: db = Sequel.sqlite db[:user].join_table(:left, :photos, user_id: :user_id) 这将连接用户表上的照片表(保留没有照片的用户) 但是,这会将用户的所有行数乘以其照片数: [ {user_id: 1, name: 'User1', photo_id: 1, photo_name: 'profile.jpg'} {user

我正在使用Sequel从SQLite数据库中读取行。不需要写东西

我使用的是基本联接。考虑这一点:

db = Sequel.sqlite
db[:user].join_table(:left, :photos, user_id: :user_id)
这将连接用户表上的照片表(保留没有照片的用户)

但是,这会将用户的所有行数乘以其照片数:

[
  {user_id: 1, name: 'User1', photo_id: 1, photo_name: 'profile.jpg'}
  {user_id: 1, name: 'User1', photo_id: 2, photo_name: 'cat.jpg'}
  {user_id: 1, name: 'User1', photo_id: 3, photo_name: 'dog.jpg'}
  {user_id: 2, name: 'User2', photo_id: 4, photo_name: 'profile.jpg'}
  {user_id: 2, name: 'User2', photo_id: 5, photo_name: 'profile.jpg'}
  {user_id: 3, name: 'User3', photo_id: nil, photo_name: nil}
]
我希望将所有照片属性嵌套在一个键下,如下所示:

[
  {user_id: 1, name: 'User1', photos: [{photo_id: 1, photo_name: 'profile.jpg'}, {photo_id: 2, photo_name: 'cat.jpg'}, {photo_id: 3, photo_name: 'dog.jpg'}]}
  {user_id: 2, name: 'User2', photos: [{photo_id: 4, photo_name: 'profile.jpg'}, {photo_id: 5, photo_name: 'profile.jpg'}]},
  {user_id: 3, name: 'User3', photos: [] }
]
我如何才能实现这种“迷你关系”?我必须指定一个模型吗