কেন ম্যাজেন্টো 2 টি ইউআরএলগুলিকে 3+ অক্ষর হতে বাধ্য করে


9

আপনি যদি hello-worldম্যাজেন্টো 2 এর মতো সামনের নামের সাথে একটি মডিউল তৈরির চেষ্টা করেন তবে আপনি দেখতে একটি ত্রুটি পাবেন ।

Invalid XML in file /Users/alanstorm/Sites/magento-2-with-keys/magento2/app/code/Pulsestorm/HelloPestle/etc/frontend/routes.xml:
Element 'route', attribute 'id': [facet 'pattern'] The value 
'hello-world' is not accepted by the pattern '[A-Za-z0-9_]{3,}'.

দেখে মনে হচ্ছে যে ম্যাজেন্টো ইউআরএল এর সামনের নামগুলি চায় না যার মধ্যে একটি সংখ্যা, চিঠি বা আন্ডারস্কোর ব্যতীত অন্য কিছু রয়েছে। এটি সামনের নামগুলিকে তিন বা ততোধিক অক্ষর রাখতে বাধ্য করে।

সংখ্যা, চিঠি এবং আন্ডারস্কোর সীমাবদ্ধতা বোঝা যায় যেহেতু একটি রুট আইডি একটি লেআউট হ্যান্ডেল তৈরি করতে ব্যবহৃত হয় এবং " বিশেষ " অক্ষর সেখানে সমস্যা দেখা দিতে পারে। তবে তিনটি চরিত্রের সীমা বিভ্রান্তিকর।

কেউ এর কারণ কি জানেন?


হতে পারে এটি XSD বৈধতার কারণে রয়েছে।
ভড়গব মেহতা

2
@ ভরগাভ হ্যাঁ, তবে কেন এক্সএসডি সেভাবে কনফিগার করা হয়েছে?
অ্যালান ঝড়

উত্তর:


4

কারণটি হ'ল খুব স্বল্প শনাক্তকারীদের সাথে অগোছালো ঘোষণাগুলি এড়ানো (পিএইচপি কোড স্টাইল বিশ্লেষকগুলিতে খুব সংক্ষিপ্ত পরিবর্তনশীল সীমাবদ্ধতার মতো)।

এটি একাধিক ক্ষেত্রের ধরণের ক্ষেত্রে প্রয়োগ করা হয়েছিল। রুটের সামনের নামটি ভুল করে এই সীমাবদ্ধতা রয়েছে। এটা ঠিক করা হবে


0

হ্যালো-ওয়ার্ল্ডকে হ্যালো_ওয়ার্ল্ড হিসাবে পরিবর্তন করুন

বৈধ অক্ষরগুলি বর্ণমালা, সংখ্যাসূচক এবং _


এই প্রশ্নের উত্তর বলে মনে হচ্ছে না?
অ্যালান ঝড়

-2

হ্যাঁ, এটি .xsd- এ রয়েছে (রাউটারআইডিটাইপ, রুটআইডিটাইপ, মডিউল নাম টাইপ, পূর্বে আফটারটাইপ, রুটফ্রন্টনাম টাইপ)। কারণ অজানা।

https://github.com/magento/magento2/blob/077584c99ebb8007cad176c3b9a0144a05c259cd/lib/internal/Magento/Framework/App/etc/routes.xsd

https://github.com/magento/magento2/blob/077584c99ebb8007cad176c3b9a0144a05c259cd/lib/internal/Magento/Framework/App/etc/routes_merged.xsd


2
সীমাবদ্ধতা কীভাবে কার্যকর করা হয়েছিল তার প্রযুক্তিগত বিশদ সম্পর্কে আমি আগ্রহী নই, আমি কেন এটি প্রথম স্থানে রয়েছে তা জানতে চাই।
অ্যালান ঝড়
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.