У меня есть отношения многие ко многим:
Пользователь имеет_ множество организаций через аффилированные лица и наоборот.
Я использую декларативные организации, и я хочу, чтобы пользователь редактировал определенную организацию только в том случае, если он является аффилированным лицом, а атрибут affiliationtype для аффилиации имеет определенное значение.
Таким образом, в филиалах есть 3 столбца: user_id, organization_id и affiliationtype_id
Я могу сделать:
o = Organization.find(:first)
o.affiliatons[0].user and get the user
Теперь я хочу сделать это:
has_permission_on [:organizations], :to => :edit do
if_attribute (...)
end
То, что if_attribute должен видеть, является ли текущий пользователь пользователем organization.affiliation [?]. И является ли organization.affiliation [?]. Affiliationtype_id = "3"
Я надеюсь, что это проблема синтаксиса ... Мне действительно нужно, чтобы это работало.