तो मेरे पास यह पागल विचार है जिसे लैरावेल और मॉडल विरासत के साथ करना है। मैं एक एकल माता-पिता के साथ मॉडल का एक सेट कॉन्फ़िगर करना चाहता हूं लेकिन जब मैं बाल मॉडल का अनुरोध करता हूं तो मुझे डेटा वापस लौटाया जाएगा। उदाहरण के लिए मेरे पास एक संपर्क मॉडल होगा जो माता-पिता है:लार्वेल 5 मॉडल विरासत - बच्चे मोड प्राप्त करते समय मूल डेटा लौटा
Contacts: id, first_name, last_name, image
तब मेरे पास संपर्क प्रकारों की एक श्रृंखला होगी जो संपर्कों से प्राप्त होती है। इन बाल मॉडलों में से प्रत्येक के पास अपने स्वयं के खेतों का सेट होगा (यानी सदस्यों के लिए मुझे पता होना चाहिए कि वे कब शामिल हुए हैं, आदि। लेकिन स्वयंसेवकों के लिए मुझे यह जानने की आवश्यकता हो सकती है कि उनके पास एक अद्यतित प्राथमिक चिकित्सा प्रमाण पत्र है या नहीं)। यहाँ कुछ उदाहरण हैं:
Members: contact_id, joined_on, birthday, medical_concerns
Volunteers: contact_id, current_first_aid, interests
Staff: contact_id, pay_rate
मैं की तरह कुछ करने के लिए सक्षम होने के लिए प्यार होता है:
$members = \App\Member::all();
और संपर्क करें और सदस्य डेटा नहीं दिया है कि सब कुछ एक पंक्ति थी, इस तरह है:
+---+------------+-----------+-------+------------+------------+------------------+
|id | first_name | last_name | image | joined_on | birthday | medical_concerns |
+---+------------+-----------+-------+------------+------------+------------------+
| 1 | Fred | Bloggs | null | 2015-01-01 | 1993-10-22 | false |
| 2 | Jim | Phillips | null | 2016-04-30 | 1987-09-22 | true |
+---+------------+-----------+-------+------------+------------+------------------+
और इसे थोड़ा और कठिन बनाने के लिए मैं माता-पिता को बच्चे के लिए काम करने के लिए लागू सभी रिश्तों को पसंद करूंगा। भले ही सदस्य मॉडल एक रिश्ता फोन मॉडल यह संपर्क से संबंधित फोन वापसी होगी क्योंकि माता पिता है कि संबंध नहीं है करने के लिए परिभाषित नहीं है
$members = \App\Member::find(1)->phone
और,: तो मैं कुछ इस तरह कर सकता है।
मैं भी और नहीं कॉलम है कि जब डेटा पुन: प्राप्त बच्चे से संबंधित नहीं है निर्दिष्ट करने के लिए सक्षम होने के लिए Laravel एक त्रुटि फेंक है चाहते हैं:
$members = \App\Member::all(['first_name','last_name','joined_on'])
मैं चारों ओर सुवक्ता मॉडल अधिभावी के साथ गड़बड़ कर दिया है और सभी का अपना संस्करण लिखना और उन तरीकों को ढूंढना जो काम कर रहे हैं लेकिन ऐसा लगता है कि मुझे इसे काम करने के लिए सभी विधियों को ओवरराइड करना पड़ सकता है और हो सकता है कि यह सिर्फ वांछित होने और अन्य की तलाश करने से अधिक काम करेगा (या मेरा खुद bespoke) समाधान।
तो मुझे लगता है कि मेरे प्रश्न हैं: क्या लैरवेल के साथ ऐसा करने का एक "आसान" तरीका है या क्या मैं इसे ऐसा करने की कोशिश कर रहा हूं जिसे कभी करने का इरादा नहीं था?