سؤال

هل من الممكن الحصول على قائمة من أعمدة الجدول التي ترتبط نموذج ?

هل كانت مفيدة؟

المحلول

فمن الممكن استخدام describeTable() الطريقة.

لذلك نموذج الموارد الخاصة بك ، يمكنك إنشاء وظيفة كما يلي واحد ، وهذا سيعود مجموعة من الحقول للجدول الرئيسي:

public function getFields()
{
    $fields = $this->_getWriteAdapter()->describeTable($this->getMainTable());
    return $fields;
}

نصائح أخرى

لمن يعاني من هذا في Magento 2:

في عرفك فئة نموذج الموارد, ، أضف هذه الوظيفة:

public function getFields()
{
    $fields = $this->getConnection()->describeTable($this->getMainTable());
    return $fields;
}

وفي مكان ما تحتاج إلى الحصول على جميع أعمدة الجدول (جميع حقول الكائن):

$objectModel = $this->objectFactory->create(); // I prefer using dependency injection
$keys = array_keys($objectModel->getResource()->getFields());

ملاحظة:شكرًا لكFra على سؤال الإجابة الذاتية الرائع.لقد وفر الكثير من وقتي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى magento.stackexchange
scroll top