I'm trying to create the simplest has_many
relationship possible for one of my models. It's defined like that:
# i know it doesn't make much sense. I'm using such ridiculous
# where case to keep things simple for now
has_many :jobs, -> { where(id: 1) }, class_name: SidekiqJob
However, when i' trying to call that relationship in anyway, for example with MyModel.last.jobs
, rails throws:
NoMethodError: undefined method `name' for nil:NilClass
from /Volumes/HDD/Users/michal/.rvm/gems/ruby-2.1.1/gems/activerecord-4.0.3/lib/active_record/relation/merger.rb:141:in `block in filter_binds'
Has anyone have any idea on what is going wrong in here?
- ruby 2.1.1
- rails 4.0.3
edit:
Original association definition:
has_many :jobs, (obj) -> { where('jid LIKE ?', "#{obj.superjob_id}%") }, class_name: SidekiqJob