model - केक पीएचपी 3.x में मॉडल 'शामिल' मॉडल




cakephp-3.x contain (2)

मेरे पास एक और Things में कई Things हैं I अब अपने AnotherThing Controller में मेरी एडिट एक्शन में उन्हें ऑर्डर करने का प्रयास कर रहा हूं - मैं अपने संपादन में ठीक Things उपयोग कर सकता हूं, लेकिन मैं उन्हें अलग तरह से सॉर्ट करना चाहता हूं (उनकी आईडी पर नहीं), उदाहरण के लिए Things.pos

सबसे अच्छा अभ्यास यहाँ क्या है? मैंने इसके साथ कोशिश की

public $hasMany = array(
        'Thing' => array(
            'order' => 'Thing.pos DESC'
        )
    );

लेकिन कुछ भी नहीं बदला कोई उपाय?


प्रलेखन ओवरराइड माफ़ कीजिये!

वैसे भी, अगर कोई जवाब देने की तलाश में है, तो यहां यह है: http://book.cakephp.org/3.0/en/orm/retrieving-data-and-resultsts.html#sorting-contained-associations

संपादित करें:

जब HasMany और BelongsToMany संगठनों को लोड करते हैं, तो आप उन संगठनों में डेटा को सॉर्ट करने के लिए सॉर्ट विकल्प का उपयोग कर सकते हैं:

$query->contain([
    'Comments' => [
        'sort' => ['Comment.created' => 'DESC']
    ]
]);

यदि आपने अपनी संबद्ध तालिका में कुछ कस्टम खोजक विधियों को परिभाषित किया है, तो आप उन्हें () के अंदर उपयोग कर सकते हैं आपके मामले के लिए आप इसे नीचे की तरह हल कर सकते हैं:

$query->contain([
        'Comments' => function ($q) {
           return $q->order(['created'=>'DESC']);
        }
    ]);