আমি ম্যাজেন্টো ২-তে একটি মডেলের (মডেল নয়) আচরণটি পরিবর্তন করার চেষ্টা করছি
question প্রশ্নের মধ্যে মডেলটি হ'ল advanced_inventory_modal
ঘোষণা করা module-catalog-inventory/view/adminhtml/ui_component/product_form.xml
।
এখন আমি জানি যে আমি পণ্য-ফর্ম-সংশোধক-পুলে একটি পরিবর্তনকারী ব্যবহার করতে পারি:
<virtualType name="Magento\Catalog\Ui\DataProvider\Product\Form\Modifier\Pool">
<arguments>
<argument name="modifiers" xsi:type="array">
<item name="hf_quantity" xsi:type="array">
<item name="class" xsi:type="string">Vendor\Module\Ui\DataProvider\Product\Form\Modifier\Quantity</item>
<item name="sortOrder" xsi:type="number">100</item>
</item>
</argument>
</arguments>
</virtualType>
... এবং modifyMeta()
এক্সএমএল কনফিগারেশনটি পরিচালনা করতে আমার মডিফায়ারে-অর্থসূচকটি ব্যবহার করুন , তবে কিছু কারণে, ইনভেনটরি মডেলটি এখানে সরবরাহ করা ডেটাতে উপস্থিত নেই।sortOrder
আমি ইতিমধ্যে সেভাবে উঁচুতে স্থাপন করার কারণে এটি কোনও সম্পর্কিত সম্পর্কিত সমস্যাও নয় ।sortOrder
-Attribute এটা দিয়ে কি কিছু থাকতে পারে।
তাহলে কি দেয়? কেউ কি আমাকে বলতে পারবেন যে ম্যাজেন্টো 2 তে বিদ্যমান মডেলের সামগ্রীটি সংশোধন করার উপযুক্ত উপায় কী?
সম্পাদনা:
আমি কী অর্জন করতে চাইছি তা কীভাবে অর্জন করতে হবে সে সম্পর্কে আমি একটি সমাধান বা কার্যকারিতা খুঁজে পেয়েছি (এখনও নিশ্চিত নয়)। দেখা যাচ্ছে যে আমি যদি 10000 সেট করে sortOrder
রাখি তবে আমার নিজস্ব পদ্ধতিতে আমি ব্যবহার করতে পারি এমন কিছু ডেটা রয়েছে :modifyMeta()
public function modifyMeta(array $meta)
{
if ($path = $this->arrayManager->findPath('quantity_and_stock_status_qty', $meta, null, 'children')) {
$this->arrayManager->remove(
$path . '/children/qty/arguments/data/config/validation/validate-digits',
$meta
);
}
if ($path = $this->arrayManager->findPath('advanced_inventory_modal', $meta)) {
$meta = $this->arrayManager->merge(
$path . '/children/stock_data/children/qty/arguments/data/config',
$meta,
['validation' => ['validate-digits' => false]]
);
}
return $meta;
}
Note that the `advanced_inventory_modal` node is not yet complete, but my best guess is that the later addition of the modal merges with these settings, but doesn't override it. Could be wrong though, perhaps someone could share some more light on how this mechanism works?