ডকুমেন্টেশনমডেল বুঝুন

রাউটিং

Nexy এর দুটি নেটিভ রাউটার রয়েছে। আপনি প্রতি বৈশিষ্ট্য একটি বাছাই করতে পারেন; তারা একই অ্যাপ্লিকেশনে সহাবস্থান করতে পারে।

নিশ্চিত নন? ফাইল-ভিত্তিক ব্যবহার করুন রাউটিং এটি কোনও সেটআপ ছাড়াই পৃষ্ঠা এবং API শেষ পয়েন্টগুলি কভার করে৷ মডুলার রাউটার যোগ করুন যখন ব্যাকএন্ডে কন্ট্রোলার, ইনজেকশন পরিষেবা বা গার্ডের প্রয়োজন হয়।

আপনি নির্মাণ করছেন ব্যবহার করুন
পৃষ্ঠা, বিষয়বস্তু, কয়েকটি শেষ পয়েন্ট সহ একটি সাইট ফাইল-ভিত্তিক
রুট জুড়ে শেয়ার করা পরিষেবা সহ একটি বড় API মডুলার
উভয়: মানুষের জন্য পৃষ্ঠা, মেশিনের জন্য একটি কাঠামোগত API ফাইল-ভিত্তিক এবং মডুলার একসাথে
ফাইল-ভিত্তিক রাউটার, এক নজরে
src/routes/index.nexy/
src/routes/about.nexy/about
src/routes/blog/index.nexy/blog
src/routes/blog/[slug].nexy/blog/:slug
src/routes/(app)/dashboard.nexy/dashboard
src/routes/api/users.py/api/users(GET, POST, …)
মডুলার রাউটার, এক নজরে
@Controller() class AppController/
@Controller("/about") class AboutController/about/
@Controller("/api/users") class UserController/api/users/(get, post, …)
@Module() class AppModulelists the controllers
useRouter = AppModule nexyconfig.pymounts the module
রাউটার উৎস দ্বারা সক্রিয়
ফাইল-ভিত্তিক (FBR) প্রতিটি ফাইল src/routes/ এর অধীনে ডিরেক্টরি বিদ্যমান
মডুলার কন্ট্রোলার এবং মডিউল useRouter = AppModule nexyconfig.py

FBR স্ক্যান করা হয় যখনই src/routes/ থাকে, এমনকি একটি মডুলার রাউটার মাউন্ট করেও।

সহাবস্থান এবং অগ্রাধিকার

আপনি FBR, মডুলার, এবং কাস্টম ইন্টিগ্রেশন একত্রিত করতে পারেন। Nexy এই রুটগুলিকে সেগুলি যেভাবে আবিষ্কৃত হয় সে অনুযায়ী নিবন্ধন করে৷ যদি দুটি রাউটার একই ইউআরএল পাথ সংজ্ঞায়িত করে, প্রথমটি নিবন্ধিত বিজয়ী হয়।

দ্রষ্টব্য: Nexy বর্তমানে URL সংঘর্ষের জন্য একটি ডায়াগনস্টিক প্রদান করে না; একটি পথ দাবি করার প্রথম পথটি কেবল অন্যদের ছায়া দেয়।

ফাইল-ভিত্তিক রাউটিং

একটি রুট একটি ফাইল. URL হল এর পাথ src/routes/ এর অধীনে, বিয়োগ এক্সটেনশন। Next.js এর মতো, একটি প্রকল্প দুটি মোডের একটিতে, useCSR এর সাথে নির্বাচিত:

useCSR = False (ডিফল্ট) useCSR = True
পাতা .nexy, .md, .mdx আপনার ক্লায়েন্ট ফ্রেমওয়ার্কের ফাইল
রুট লেআউট layout.nexy layout.tsx (React)
ক্লায়েন্ট উপাদান অনুমোদিত, পৃষ্ঠার ভিতরে দ্বীপ হিসাবে পৃষ্ঠাগুলি নিজেরাই
API রুট .py .py

সার্ভার মোড এবং ক্লায়েন্ট মোড দেখুন।

ধারা এটা কভার কি
fbr/পৃষ্ঠা পৃষ্ঠা, গতিশীল রুট এবং রুট গ্রুপ
fbr/লেআউট layout.nexy, layout.tsx, layout.vue, layout.svelte
fbr/হ্যান্ডলার .py রুট হ্যান্ডলার, বৈধকরণ এবং ত্রুটি
fbr/নির্ভরতা dependencies.py এবং গার্ড, ডিরেক্টরি দ্বারা উত্তরাধিকারসূত্রে প্রাপ্ত
fbr/মিডলওয়্যার middleware.py, ডিরেক্টরি দ্বারা উত্তরাধিকারসূত্রে প্রাপ্ত
fbr/ত্রুটি notfound.nexy, errors.nexy, JSON ত্রুটি
fbr/নেভিগেশন লিঙ্কিং, ক্লায়েন্ট নেভিগেশন, হুকস
fbr/realtime WebSocket হ্যান্ডলার
fbr/উত্তরাধিকার কিভাবে লেআউট, নির্ভরতা এবং ত্রুটি পৃষ্ঠাগুলি উত্তরাধিকারসূত্রে পাওয়া যায়

মডুলার রাউটিং

কন্ট্রোলার, মডিউল এবং নির্ভরতা ইনজেকশন, এর স্টাইলে NestJS। মডুলার রাউটিং এবং Nexy এবং NestJS দেখুন।

ধারা এটা কভার কি
মডুলার @Controller, @Module, আমদানি ও রপ্তানি
মডুলার/নির্ভরতা-ইনজেকশন @Injectable, স্কোপ এবং ধারক
মডুলার/গার্ডস-এন্ড-মেটাডেটা @UseGuard, @UseResponse এবং OpenAPI মেটাডেটা

একটি কন্ট্রোলার একটি .nexy ভিউ useViews দিয়ে ফেরত দেয়, এবং এটিকে তার লেআউটে হাত দিয়ে পাস করে: ফোল্ডার দ্বারা কোন layout.nexy প্রয়োগ করা হয় না।

কাস্টম ইন্টিগ্রেশন

আপনি আপনার Nexy প্রজেক্টে একটি বিদ্যমান FastAPI রাউটারও সংহত করতে পারেন। কাস্টম রাউটিং ইন্টিগ্রেশন দেখুন।

পরবর্তী পদক্ষেপ

GitHub-এ সম্পাদনা করুন

Enter ফলাফল খোলে, Esc বন্ধ করে।