所以我有两个模型users
和services
。 Users
check
基本为service
添加了书签user.checks
,因此我想通过where
访问它们。现在用户和服务之间可能存在不同的关系,这就是我放置relationship_type
子句以确保check
为 has_many :checks, through: :user_services, source: :service, dependent: :destroy, -> { where relationship_type: 'check' }
的原因。
守则
/app/models/user.rb:21: syntax error, unexpected '\n', expecting =>
错误
{{1}}
这是一个语法问题,我无法弄明白!
答案 0 :(得分:1)
将哈希作为参数传递给方法时,只有当哈希值是传递的最后一个(或唯一)参数时,才能禁止{}
。在这种情况下,您在它之后传递lamba,因此必须将哈希显式写为
has_many :checks, { through: :user_services, source: :service, dependent: :destroy }, -> { where relationship_type: 'check' }