در جنگو دامنه یک برنامه جنگو که اجازه می دهد تا شما را به اجرای بسیاری از سایت های مختلف در یک نمونه جنگو است.
نصب
1. نصب بسته
تصویر در تصویر جنگو دامنه نصب
2. settings.py گسترش و اضافه کردن میان به پایان تاپل MIDDLEWARE_CLASSES:
MIDDLEWARE_CLASSES + = (
& nbsp؛ در 'domains.middleware.RequestMiddleware،
& nbsp؛ در 'domains.middleware.DynamicSiteMiddleware،
)
اول domains.middleware.RequestMiddleware میان لازم است، چرا که آن را مجموعه شی درخواست به موضوع محلی است.
domains.middleware.DynamicSiteMiddleware میان دوم اختیاری است. شما می توانید آن را برای پارامتر SITE_ID تغییر دینامیکی استفاده متناظر PK سایت با دامنه درخواست (جنگو چارچوب سایت مراجعه کنید).
اگر شما هم می خواهید به استفاده از قالب های مختلف برای حوزه، اضافه کردن قالب لودر در از تاپل TEMPLATE_LOADERS شروع:
TEMPLATE_LOADERS = (
& nbsp؛ در 'domains.loaders.filesystem.Loader،
& nbsp؛ در 'domains.loaders.app_directories.Loader،
و nbsp؛ # لودر دیگر
)
& nbsp؛ از اجرای آزمون:
حوزه آزمون ./manage.py
استفاده
اگر می خواهید به استفاده از مجموعه قالب های مختلف برای هر حوزه، فقط ایجاد دایرکتوری با نام domainname.tld (فراموش نکنید که اضافه TEMPLATE_LOADERS عنوان در نصب و راه اندازی نمیفهمد) قرار داده و قالب اینجا.
همچنین شما می توانید تابع سفارشی که ایجاد نام دامنه استفاده کنید. شما باید ویژگی DOMAINS_TEMPLATE_NAME_FUNCTION به settings.py خود را اضافه کنید و تعیین مسیر به نامگذاری تابع.
تابع باید چندتایی با قطعات مسیر بازگشت. این قطعات خواهد شد را به مسیر قالب کامل با جنگو دامنه پیوست.
از شما انتظار این تابع my_custom_template_name تماس بگیرید و آن را در / پروژه / utils.py من قرار داده:
جهت مشاهده فرم خرید، شما می توانید برای درخواست دسترسی :)
دف my_custom_template_name (template_dir، الگو):
و nbsp؛ "" "
& nbsp؛ این تابع تولید مسیر الگو در قالب:
را لمس کنید و؛ {template_dir} / سفارشی / حوزه / {میزبان} / {الگو}
و nbsp؛ "" "
& nbsp؛ از domains.utils وارد get_request
& nbsp؛ از درخواست = get_request ()
و nbsp؛ بازگشت (template_dir، 'سفارشی'، 'دامنه'، request.get_host،
& nbsp؛ در الگو)
اضافه کردن به settings.py شما این خط:
DOMAINS_TEMPLATE_NAME_FUNCTION = 'my.project.utils.my_custom_template_name'
مورد نیاز:
پایتون
جنگو
نظر یافت نشد