Ruby on rails 如何使用活动记录从foren表中进行选择
我有两个表、帐户和订阅。所有的帐户都有订阅,当我订阅时Ruby on rails 如何使用活动记录从foren表中进行选择,ruby-on-rails,postgresql,activerecord,Ruby On Rails,Postgresql,Activerecord,我有两个表、帐户和订阅。所有的帐户都有订阅,当我订阅时 Account.last.subscription.name Account Load (0.4ms) SELECT "accounts".* FROM "accounts" ORDER BY "accounts"."id" DESC LIMIT 1 Subscription Load (0.2ms) SELECT "subscriptions".* FROM "subscriptions" WHERE "subscriptio
Account.last.subscription.name
Account Load (0.4ms) SELECT "accounts".* FROM "accounts" ORDER BY "accounts"."id" DESC LIMIT 1
Subscription Load (0.2ms) SELECT "subscriptions".* FROM "subscriptions" WHERE "subscriptions"."account_id" = 73 LIMIT 1
"free"
但我正在尝试让所有设置为免费的帐户。您的问题中没有多少细节,因此我们必须做出一些假设。让我们假设
Subscription
有一个布尔free
列
# Rails 4
Account.joins(:subscriptions).where(free: true).references(:subscriptions)
# Rails 3
Account.joins(:subscriptions).where('subscriptions.free = ?', true)
如果我们假设free
是帐户属性:
Account.where(free: true)
如果您想调出订阅详细信息:
Account.where(free: true).includes(:subscriptions)
你的问题缺乏细节,所以我们不得不做出一些假设。让我们假设
Subscription
有一个布尔free
列
# Rails 4
Account.joins(:subscriptions).where(free: true).references(:subscriptions)
# Rails 3
Account.joins(:subscriptions).where('subscriptions.free = ?', true)
如果我们假设free
是帐户属性:
Account.where(free: true)
如果您想调出订阅详细信息:
Account.where(free: true).includes(:subscriptions)
根据日志,我认为OP使用
name
属性来定义哪些实例是免费的。这对我来说并不完全有意义。根据日志,我认为OP使用name
属性来定义哪些实例是免费的。对我来说不完全有意义。