6

के साथ बच्चे नोड्स शामिल मुझे लगता है कि मैं एक बहुत ही बुनियादी मामला है जब मैं मानक RESTful नियंत्रक तरीकों के लिए JSON वापस जाने के लिए Rabl उपयोग कर रहा हूँ है ...सशर्त Rabl

पहले मान लीजिए कि मैं के साथ कई रिश्ते के लिए एक विशिष्ट एक है चलो सूचकांक जहां मैं सिर्फ सभी ग्राहकों (खातों) के बिना वापस जाने के लिए चाहते हैं और संपादित करें जहां मैं एक वापस जाने के लिए चाहता हूँ - मैं सूचकांक और संपादित की है

class Customer < ActiveRecord::Base 
    has_many :accounts 
end 

ग्राहक के लिए अपने नियंत्रक में: माता-पिता और बच्चे (ग्राहक का कहना है और खातों हैं) अपने सभी खातों के साथ विशिष्ट ग्राहक। इंडेक्स के साथ मैं स्पष्ट प्रदर्शन (एन + 1) कारणों के लिए खातों को वापस नहीं करना चाहता हूं।

#index.rabl (for listing all customers) 
collection :@customers 
extends "customers/_customer" 

और

#edit.rabl (for editing a single customer) 
object :@customer 
extends "customer/_customer" 

मैं दोनों सूचकांक और संपादन के लिए _customer.rabl पुन: उपयोग कर रहा हूँ:

मेरी Rabl में, मैं निम्नलिखित है। (@include_accounts) नीचे पारित कर दिया कभी नहीं हो जाता है उदाहरण वर यहां अनिवार्य रूप से -

#_customer.rabl 
object :@customer 
attributes :name, ...... 

if @include_accounts 
    child :accounts do 
    extends "accounts/_account" 
    end 
end 

मैं @include_accounts मेरे संपादन (नियंत्रक) और नहीं में सूचकांक सेट - लेकिन यह काम नहीं करता। इसे लागू करने के लिए सही पैटर्न क्या है?

+0

मणि का कौन सा संस्करण आप 'रैबल' या 'रैबल-रेल' का उपयोग कर रहे हैं? – drewinglis

+0

रैबल-रेल 0.3.1। –

उत्तर

3

हालांकि रेल-रैबल मणि का दावा है कि यह तेज़ है, मैंने पाया कि टेम्पलेट्स सशर्त अभिव्यक्तियों के लिए लचीले नहीं हैं - राबल-रेल रीडेमे पुनः देखें: उदाहरण चर।

+1

धन्यवाद। मैं रैबल मणि के लिए स्विच किया और सब कुछ एक आकर्षण की तरह काम किया। –