ROR için yeni ve kapsamları anlamaya çalışıyorum. Mevcut uygulamamda tüm İşlemcileri alıyorum ve görüntüyü görüntüliyorum.Birden çok tabloya katılmak için kapsamlar nasıl kullanılır
class ProcessorsController
def index
@processors = Processor.all
end
end
Bu yüzden kullanıcı Admin yalnızca işlemcileri alabilirsiniz değiştirmek istiyor. İlişkilerim böyle kuruldu.
class Processor
belongs_to :feed
#SCOPES (what I have done so far)
scope :feed, joins(:feed)
scope :groups, joins(:feed => :groups).join(:user).where(:admin => true)
end
class Feed < ActiveRecord::Base
has_and_belongs_to_many :groups
end
class Group < ActiveRecord::Base
belongs_to :user
end
class User < ActiveRecord::Base
has_many :groups
scope :admin, where(:admin => true)
end
benim gözetlemek içinde
pry(main)> Processor.find(63).feed.groups.first.user.admin?
PS bunu başardı: Birisi ilişkiler karmaşık olup olmadığını kapsamları kullanmayı öğrenmek olabilir bazı iyi kaynaklar sağlayabilir.
Çok teşekkürler. Evet, doktora gittim, ama çoklu birleşmelerin kullanımını yakalamadım. –
Cevabınız, gerçekten kapsamları içindeki birleşimleri nasıl kullanacağımı açıkladı. Sadece aynı. Biri, metodu çağırmadan önce Model adı kısmını 'çıkarmanız' gerekir. – Francisco