আমি এ Route
এবং এ এর মধ্যে পার্থক্যটি বোঝার চেষ্টা করছি Resource
। আমি যেভাবে বুঝি তা অন্য অবজেক্টে কোনও অবজেক্টের Resource
সাব পাথ সেট করতে সহায়তা করে । তবে এটি অস্পষ্ট যখন আমি পথগুলির জন্য ডিফল্ট নেম ম্যাপিংয়ের কথা ভাবছি।Route
Route
আমি এ Route
এবং এ এর মধ্যে পার্থক্যটি বোঝার চেষ্টা করছি Resource
। আমি যেভাবে বুঝি তা অন্য অবজেক্টে কোনও অবজেক্টের Resource
সাব পাথ সেট করতে সহায়তা করে । তবে এটি অস্পষ্ট যখন আমি পথগুলির জন্য ডিফল্ট নেম ম্যাপিংয়ের কথা ভাবছি।Route
Route
উত্তর:
দয়া করে মনে রাখবেন যে ১.১১.০.০ এর পরে
this.route
কেবল পরিবর্তে ব্যবহৃত হয়this.resource
। সূত্র: http://guides.emberjs.com/v1.11.0/routing/defining-your-routes/ *
বিস্তারিত ব্যাখ্যার জন্য এই পোস্টটি একবার দেখুন ।
এটি এই পোস্টের মোটামুটি সংক্ষিপ্তসার (আমি কিছুটা সংশোধন করেছি):
যেহেতু সংস্থান এবং রুটে পরিবর্তনের পরে অনেক লোক দুজনের অর্থ এবং তারা কীভাবে নামকরণকে প্রভাবিত করে সে সম্পর্কে বিভ্রান্ত। পার্থক্য এখানে:
- সংস্থান - একটি জিনিস (একটি মডেল)
- রুট - জিনিস কিছু করার
সুতরাং এর অর্থ একটি রাউটারটি কোনও রুট এবং সংস্থান ব্যবহার করে এমন দেখাতে পারে:
App.Router.map(function() {
this.resource("posts", { path: "/" }, function() {
this.route("new", { path: "/new" });
});
this.route("another", { path: "/another" });
});
এর ফলে নিম্নলিখিত রুটগুলি তৈরি / ব্যবহৃত হচ্ছে:
যেমন আমরা এই উদাহরণ থেকে দেখছি, সংস্থাগুলির নামকরণ, রুট এবং ভিউগুলি ব্যবহৃত / তৈরি হচ্ছে এমন নামকরণ প্রভাবিত করে ("নতুন" রুটটি "পোস্ট" সংস্থার অধস্তন হিসাবে বিবেচিত হয়)। মূল উত্স থেকে উদ্ধৃত করুন (আমি এটিকে সংশোধন করেছি, কারণ প্যাট্রিক এম মন্তব্যে সঠিকভাবে নির্দেশ করেছেন বলে এটি বিরক্তিকর হয়েছিল):
এর অর্থ আপনি যখনই কোনও সংস্থান তৈরি করবেন এটি একেবারে নতুন নেমস্পেস তৈরি করবে। সেই নেমস্পেসটির নাম সংস্থান হিসাবে দেওয়া হয়েছে এবং সমস্ত শিশু রুট এতে .োকানো হবে।
আপডেট: নেস্টেড রিসোর্স সহ আরও জটিল উদাহরণ
একাধিক নেস্টেড সংস্থান সহ নিম্নলিখিত আরও জটিল উদাহরণটি বিবেচনা করুন:
App.Router.map(function() {
this.resource("posts", { path: "/" }, function() {
this.route("new", { path: "/new" });
this.resource("comments", { path: "/comments" }, function() {
this.route("new", { path: "/new" });
});
});
this.route("another", { path: "/another" });
});
এক্ষেত্রে comments
রিসোর্সটি একেবারে নতুন নেমস্পেস তৈরি করে। এর অর্থ এই ক্ষেত্রে ফলাফল প্রাপ্ত রুটগুলি নিম্নলিখিত হবে। আপনি দেখতে পাচ্ছেন যে মন্তব্যগুলির সংস্থানগুলির জন্য রুট, নিয়ামক এবং দর্শন পিতামাতার রুটের নামের সাথে উপসর্গ করা হয়নি। এর অর্থ অন্য সংস্থার অভ্যন্তরে কোনও উত্সকে বাসা বাঁধাই নামস্থান পুনরায় সেট করে (= একটি নতুন নেমস্পেস তৈরি করে)।
এই আচরণটি এমবার ডক্সেও ব্যাখ্যা করা হয়েছে ।
That namespace will have an " which [...]
। কী "
মানে? এটি কি রাস্তার জন্য কেবল স্থানধারক | নিয়ন্ত্রক | দেখুন?
App.Router.map(function() { this.route("posts", { path: "/" }, function() { this.route("new"); this.route("comments"}, function() { this.route("new"); }); }); this.route("another", { path: "/another" }); });