दस्तावेज़फ़ाइल कन्वेंशन

फ़ाइल कन्वेंशन

src/routes/ के अंतर्गत आरक्षित नाम और नियम।

फ़ाइलें रूट करें

फ़ाइल बन जाता है
index.nexy, index.md, index.mdx, index.py इसकी निर्देशिका का मार्ग
about.nexy /about
[slug].nexy गतिशील खंड {slug}
[...path].nexy सब पकड़ो {path:path}
(group)/page.nexy /page: समूह यूआरएल में दिखाई नहीं देता है
name.py एपीआई हैंडलर; फ़ंक्शन नाम GET, POST, ... विधियां हैं
name.tsx, .jsx, .vue, .svelte जब फ़्रेमवर्क को useFF के साथ सक्षम किया जाता है तो क्लाइंट रूट
src/routes/
index.nexy/
about.nexy/about
(marketing)/
pricing.nexy/pricing
blog/
index.md/blog
[slug].nexy/blog/{slug}
docs/
[...path].nexy/docs/{path:path}
api/
users.pyGET /api/users, POST /api/users
src/routes/api/users.py
async def GET():    return {"users": []}  async def POST():    return {"created": True}

आरक्षित फ़ाइलें

फ़ाइल भूमिका विवरण
layout.nexy सर्वर मोड: इसके नीचे प्रत्येक पृष्ठ को लपेटता है; रूट वाला HTML दस्तावेज़ का स्वामी है लेआउट.नेक्सी
layout.tsx क्लाइंट मोड (React): रूट वाले के पास HTML दस्तावेज़ होता है, नेस्टेड वाले पेजों को लपेटते हैं लेआउट.tsx
layout.vue, layout.svelte क्लाइंट मोड: नेस्टेड लेआउट लेआउट.व्यू, लेआउट.स्वेल्ट
notfound.nexy इसकी निर्देशिका के लिए 404 पेज त्रुटि पृष्ठ
errors.nexy इसकी निर्देशिका के लिए 500 पेज त्रुटि पृष्ठ
forbidden.nexy इसकी निर्देशिका के लिए 403 पेज प्रति फ़ोल्डर त्रुटि पृष्ठ
unauthorized.nexy इसकी निर्देशिका के लिए 401 पृष्ठ प्रति फ़ोल्डर त्रुटि पृष्ठ
loading.nexy आरक्षित; अभी तक कोई रनटाइम प्रभाव नहीं है त्रुटि पृष्ठ
middleware.py एक async def middleware(request, call_next) निर्देशिका और नीचे के अनुरोधों को लपेटते हुए मिडलवेयर फ़ाइलें
dependencies.py एक dependencies = [fn, ...] सूची निर्देशिका और उसके बच्चों पर लागू होती है निर्भरताएँ
__init__.py Python पैकेज मार्कर
favicon.ico /favicon.ico में सेवा दी गई

useLayoutExtensions, useNotFoundExtensions, useErrorsExtensions, useForbiddenExtensions, useUnauthorizedExtensions और useLoadingExtensions इन नामों के लिए अधिक एक्सटेंशन आरक्षित करते हैं। कॉन्फिग देखें।

तालिका की दो Python फ़ाइलें, एक फ़ोल्डर में साथ-साथ:

src/routes/admin/middleware.py
from nexy.http import Request  async def middleware(request: Request, call_next):    response = await call_next(request)    response.headers["x-admin"] = "1"    return response
src/routes/admin/dependents.py
from nexy.http import Header, HTTPException  def require_admin(x_role: str = Header(...)) -> None:    if x_role != "admin":        raise HTTPException(status_code=403, detail="Admins only")  dependencies = [require_admin]

और एक पृष्ठ जो इसके फ़ोल्डर के 404 का उत्तर देता है:

src/routes/notfound.nexy
<h1>Page not found</h1><p><a href="/">Back home</a></p>

उपेक्षित फ़ाइलें

  • _ या . से शुरू होने वाली फ़ाइल या फ़ोल्डर: इसे आंशिक, ड्राफ्ट और सहायकों के लिए उपयोग करें।
  • एक फ़ाइल जिसका एक्सटेंशन प्रोजेक्ट के लिए सक्रिय नहीं है: इसे एक चेतावनी के साथ छोड़ दिया जाता है।
src/routes/
index.nexy/
_card.nexyignored: a partial the pages include
_helpers/ignored, with everything inside
format.py
.draft.nexyignored: a draft

प्रति यूआरएल एक फ़ाइल

दो फ़ाइलें जो समान URL पर हल होती हैं, दोनों पंजीकृत होती हैं। blog.nexy को blog/index.nexy के आगे न रखें।

src/routes/
blog.nexy/blog
blog/
index.nexy/blog as well: keep only one of the two

बाहर src/routes/

फ़ोल्डर प्रयोजन
src/components/ पृष्ठों द्वारा आयातित घटक; कभी मार्ग नहीं
src/apps/ मॉड्यूलर राउटर के नियंत्रक और मॉड्यूल
public/ स्थिर फ़ाइलें, रूट पर दी गई: public/logo.svg /logo.svg है (/public/ के अंतर्गत भी)
__nexy__/ उत्पन्न आउटपुट; प्रतिबद्ध मत हो
my-app/
nexyconfig.py
public/
logo.svg/logo.svg
src/
routes/the routes
components/
Counter.tsximported by pages, never served on its own
apps/the modular router, when you use it
__nexy__/generated: add it to .gitignore

अगले चरण

GitHub पर संपादित करें

Enter परिणाम खोलता है, Esc बंद करता है।