【问题标题】:Rails 3 finding object in a HABTM relationshipRails 3在HABTM关系中查找对象
【发布时间】:2010-09-05 16:34:51
【问题描述】:

让自己感到困惑。 . .

我有一个 SubscriptionPlan ActiveRecord 对象,它有一个 HABTM 到 available_to_roles。

在 Rails 3 中,我尝试在 SubscriptionPlan 上创建范围或类方法以获得适当的订阅计划:

def self.available_subscription_plans(users_roles) #users_roles = 角色数组
#query 查找 users_roles 中 available_to_roles 中的所有订阅计划
结束

很难用新语法找出最合适的方法。

感谢您提供正确方向的任何指示!

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3


    【解决方案1】:

    混淆是由于关系定义中的拼写错误和文本对比度低造成的。为稍后出现的任何人回答:

    class SubscriptionPlan < ActiveRecord::Base
      has_and_belongs_to_many :available_to_roles, :join_table => "[join_table_name]", :class_name => 'UserRole'
    
      scope :available_subscription_plans, lambda { |users_roles|
        joins(:available_to_roles)
        .where("user_roles.id IN ( ? ) AND CURRENT_DATE > active_from_date AND CURRENT_DATE < active_to_date", users_roles)}
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多