0
我用Sequel
從其他表中的數據,我有以下2種型號在我屈應用如何使用續集
# foo.rb
require 'sequel'
module Notes
module Models
class Foo < Sequel::Model
plugin :json_serializer, naked: true
plugin :validation_helpers
one_to_many :bars
def validate
super
validates_presence [:foo_name], message: "can't be empty"
end
end
end
end
# bar.rb
require 'sequel'
module Notes
module Models
class Bar < Sequel::Model
plugin :json_serializer, naked: true
plugin :validation_helpers
many_to_one :foo
def validate
super
validates_presence [:bar_name], message: "can't be empty"
end
end
end
end
有一個在酒吧表foo_id
外鍵。
我有一個API,途徑,如果一個參數傳遞中,你可以得到所有的酒吧或只是一個特定的酒吧,看起來像:
app.get '/api/bars' do
require_session
bar_name = params[:bar_name]
bar_model = Models::Bar
if bar_name.nil?
bar_model.all.to_json
else
bar_model.where(Sequel.ilike(:bar_name, '%' + bar_name + '%'))
.all
.to_json
end
end
我今天準備這樣做,但還沒有想通但是我怎樣才能在Foo表中獲得至少foo_name
的結果,根據Bar表中的foo_id
檢索?
甚至更多,如果有更長的關聯,比如說有另一個外鍵,例如baz_id
,在鏈接到Baz表的Foo表中,並且在這個相同的API中,我也想獲得所有信息來自Foo和Baz表格,這些表格基於這些表格中的外鍵關聯。
希望有道理和任何幫助,非常感謝。
謝謝!這工作! –