021-71053903 [email protected] پشتیبانی از شنبه تا چهارشنبه ساعت 9 الی 16
  • 2

150+ سوالات استخدامی مصاحبه جنگو

1. جانگو چیست؟

پاسخ: جنگو  یک  چارچوب وب پایتون سطح بالا  است که توسعه سریع و طراحی تمیز و عملی را تشویق می کند. این برنامه که توسط توسعه دهندگان باتجربه ساخته شده است، بسیاری از دردسرهای توسعه وب را برطرف می کند، بنابراین می توانید بدون نیاز به اختراع مجدد چرخ، روی نوشتن برنامه خود تمرکز کنید. رایگان و متن باز است..

 

2. جنگو به چه معناست؟

پاسخ: جانگو به افتخار جانگو راینهارت، یک گیتاریست جاز کولی از دهه 1930 تا اوایل دهه 1950 که به عنوان یکی از بهترین گیتاریست های تمام دوران شناخته می شود، نامگذاری شده است.

 

3. جنگو از کدام الگوی معماری پیروی می کند؟

پاسخ: جنگو از الگوی معماری Model-View Template (MVT) پیروی می کند.

 

4. معماری جنگو را توضیح دهید؟

پاسخ: جنگو بر اساس معماری MVT ساخته شده است. این شامل لایه های زیر است:

مدل‌ها: طرح‌واره پایگاه داده و ساختار داده را توصیف می‌کند.

Views: لایه view یک رابط کاربری است. آن چیزی که کاربر می بیند را کنترل می کند، View داده ها را از مدل های مناسب بازیابی می کند و هر محاسبه ای را که روی داده ها انجام می شود را اجرا می کند و آن را به الگو ارسال می کند.

الگوها: تعیین می کند که کاربر چگونه آن را ببیند. توضیح می‌دهد که چگونه داده‌های دریافت‌شده از نماها باید برای نمایش در صفحه تغییر یا قالب‌بندی شوند.

کنترلر: کنترلر قلب سیستم است. درخواست ها و پاسخ ها را مدیریت می کند، اتصالات پایگاه داده را راه اندازی می کند و افزونه ها را بارگیری می کند. چارچوب جنگو و تجزیه URL را مشخص می کند.

 

5. کدام بنیاد فریم ورک وب جنگو را مدیریت می کند؟

پاسخ: چارچوب وب جنگو توسط یک سازمان مستقل و غیرانتفاعی به نام بنیاد نرم افزار جنگو (DSF) مدیریت و نگهداری می شود.


6. آیا جنگو پایدار است؟

پاسخ: بله، جانگو کاملاً پایدار است. بسیاری از شرکت‌ها مانند Disqus، Instagram، Pinterest و Mozilla سال‌هاست که از جنگو استفاده می‌کنند.


7. ویژگی های موجود در چارچوب وب جنگو چیست؟

پاسخ: ویژگی های موجود در چارچوب وب جنگو عبارتند از:

رابط مدیریت (CRUD)
قالب بندی
فرم رسیدگی به جلسه
بین المللی
سازی، مدیریت کاربر، مجوزهای مبتنی بر نقش
نگاشت ارتباطی شی (ORM)
چارچوب آزمایشی
مستندات فوق العاده


8. مزایای استفاده از جنگو برای توسعه وب چیست؟

پاسخ: به شما کمک می کند که ماژول های کد را به گروه های منطقی تقسیم کنید تا آن را برای تغییر انعطاف پذیر کنید.
مدیریت وب را به صورت خودکار ایجاد می کند تا مدیریت وب سایت را آسان کند.
این API از پیش بسته بندی شده را برای وظایف معمول کاربر فراهم می کند.
این سیستم قالب را برای تعریف قالب HTML برای صفحه وب شما فراهم می کند تا از تکرار کد جلوگیری شود.
این به شما امکان می دهد تا مشخص کنید که URL برای یک تابع مشخص چیست.
این به شما امکان می دهد منطق تجاری را از HTML جدا کنید.


 

9. چگونه یک پروژه در جنگو ایجاد کنیم؟

پاسخ: برای شروع یک پروژه در جنگو، از دستور $django-admin.py استفاده کنید و سپس از دستور زیر استفاده کنید:

پروژه

_init_.py

manager.py

settings.py

urls.py


10. سبک های ارثی در جنگو چیست؟

پاسخ: سه سبک ارثی در جنگو وجود دارد:

1. کلاس‌های پایه انتزاعی: این سبک زمانی استفاده می‌شود که شما فقط می‌خواهید کلاس والدین اطلاعاتی را در خود نگه دارد که نمی‌خواهید برای هر مدل فرزند تایپ کنید.

2. وراثت چند جدولی: این سبک در صورتی استفاده می شود که شما یک مدل موجود را زیر کلاس بندی می کنید و نیاز دارید که هر مدل جدول پایگاه داده خود را داشته باشد.

3. مدل‌های پراکسی: اگر فقط بخواهید رفتار سطح پایتون مدل را تغییر دهید، بدون تغییر فیلدهای مدل، از این سبک استفاده می‌شود.


11. چگونه می توان پایگاه داده را در Djanago راه اندازی کرد؟

پاسخ: برای راه اندازی پایگاه داده در جنگو، می توانید از دستور edit mysite/setting.py استفاده کنید، این یک ماژول معمولی پایتون با سطح ماژول است که تنظیمات جنگو را نشان می دهد.

به طور پیش فرض، جنگو از پایگاه داده SQLite استفاده می کند. برای کاربران جنگو آسان است زیرا به هیچ نوع نصب دیگری نیاز ندارد. در مورد سایر پایگاه‌های داده، برای مطابقت با تنظیمات اتصال پایگاه داده، باید کلیدهای زیر را در مورد «پیش‌فرض» DATABASE انتخاب کنید.

موتورها: می‌توانید پایگاه داده را با استفاده از «django.db.backends.sqlite3»، «django.db.backeneds.mysql»، «django.db.backends.postgresql_psycopg2»، «django.db.backends.oracle» و غیره تغییر دهید.

نام: نام پایگاه داده شما. در صورتی که از SQLite به عنوان پایگاه داده خود استفاده می کنید، در این صورت پایگاه داده یک فایل در رایانه شما خواهد بود، Name باید یک مسیر مطلق کامل، از جمله نام فایل آن فایل باشد.

توجه: اگر SQLite را به عنوان پایگاه داده خود انتخاب نمی کنید، باید تنظیماتی مانند رمز عبور، میزبان، کاربر و غیره را در پایگاه داده خود اضافه کنید.


 

12. قالب های جنگو شامل چه چیزهایی هستند؟

پاسخ: الگو یک فایل متنی ساده است. این می تواند هر قالب مبتنی بر متن مانند XML، CSV، HTML و غیره را ایجاد کند. یک الگو حاوی متغیرهایی است که هنگام ارزیابی الگو با مقادیر جایگزین می شوند و برچسب هایی (%tag%) که منطق الگو را کنترل می کند.


 

13. آیا جنگو یک سیستم مدیریت محتوا (CMS) است؟

پاسخ: نه، جنگو یک CMS نیست. در عوض، این یک چارچوب وب و یک ابزار برنامه نویسی است که به شما امکان می دهد وب سایت بسازید.


14. استفاده از session frame در جنگو چیست؟

پاسخ: چارچوب جلسه شما را برای ذخیره و بازیابی داده های دلخواه بر اساس بازدیدکننده هر سایت تسهیل می کند. داده ها را در سمت سرور ذخیره می کند و دریافت و ارسال کوکی ها را خلاصه می کند. Session را می توان از طریق یک میان افزار پیاده سازی کرد.


15. چگونه می توان فایل های استاتیک را در جنگو راه اندازی کرد؟

پاسخ: سه مورد اصلی برای تنظیم فایل های استاتیک در جنگو وجود دارد:

1. STATIC_ROOT را در settings.py تنظیم کنید

2. manager.py collectsatic را اجرا کنید

3. یک ورودی Static Files را در برگه وب PythonAnywhere تنظیم کنید


16. چگونه از جلسات مبتنی بر فایل استفاده کنیم؟

پاسخ: برای استفاده از جلسه مبتنی بر فایل، باید تنظیمات SESSION_ENGINE را روی “django.contrib.sessions.backends.file” تنظیم کنید.


17. استفاده معمولی از میان افزارها در جنگو چیست؟

پاسخ: برخی از کاربردهای میان افزار در جنگو عبارتند از:

مدیریت جلسه،
استفاده از احراز هویت
حفاظت از جعل درخواست بین سایتی
Gzipping محتوا و غیره.


18. انواع کلاس فیلد جنگو چه کار می کند؟

پاسخ: انواع کلاس فیلد جنگو مشخص می کند:

نوع ستون پایگاه داده
ویجت پیش‌فرض HTML که هنگام ارائه یک فیلد فرم مفید است.
حداقل الزامات اعتبار سنجی مورد استفاده در ادمین جنگو.
فرم های تولید شده به صورت خودکار


19. دستور راه اندازی سرور توسعه داخلی جنگو چیست؟

A. manager.py runserver
B. manager.py –start
C.
manager.py اجرا D. manager.py startserver –dev
E. manager.py –run پاسخ
: A

 

20. با توجه به مدلی به نام “کاربر” که حاوی یک فیلد DateTime به نام “last_login” است، چگونه برای کاربرانی که هرگز وارد سیستم نشده اند پرس و جو می کنید؟

الف. User.objects.filter( last_login=Null)
ب. User.objects.filter( last_login__null=True)
ج. User.objects.filter( last_login__isnull=False)
D. User.objects.filter( last_login__isnull=
E. ) User.objects.filter( last_login=هرگز ) پاسخ
: D


 

21. دستور جنگو ‘manage.py shell’ چه کار می کند؟

A. یک خط فرمان را در هر $SHELL که محیط شما استفاده می کند، راه اندازی می کند.
ب. یک خط فرمان جنگو را با محیط پایتون شما از قبل بارگذاری شده راه اندازی می کند.
ج. یک خط فرمان پایتون را با محیط جنگو شما از پیش بارگذاری شده راه اندازی می کند.
D. یک نسخه پایتونیک ویژه از پوسته Bash را بارگیری می کند.
E. یک خط فرمان پایتون را بارگیری می کند که می توانید از آن برای همگام سازی طرح پایگاه داده خود از راه دور استفاده کنید.
پاسخ: سی


22. با فرض اینکه فایل مدل جنگو مناسب را وارد کرده اید، چگونه یک مدل ‘کاربر’ را به ادمین جنگو اضافه می کنید؟

A. admin.register(کاربران)
B. admin.site(self, کاربر)
ج. user.site.register(Admin)
D. users.site.register(Admin)
E. admin.site.register(کاربر) پاسخ
: E


23. دستور جنگو برای راه اندازی یک برنامه جدید به نام ‘users’ در یک پروژه موجود چیست؟

A. manager.py –newapp کاربران
B. manager.py کاربران newapp
C. manager.py –کاربران
startapp D. manager.py کاربران startapp
E. manager.py شروع کاربران پاسخ
: D


24. فایل urls.py در جنگو چه می کند؟

A. این فایل حاوی داده های استقرار سایت مانند نام سرور و پورت ها است.
B. حاوی نقشه سایت از URL های مورد تایید جنگو است.
ج. شامل الگوهای تطبیق URL و روش های مشاهده مربوط به آنها است.
D. این فایل را زمانی اجرا می کنید که خطاهای مبهم 404 Not Found را در گزارش های سرور خود دریافت کنید.
E. این فایل فهرستی به روز از نشانی های اینترنتی چگونه برای یادگیری آسانتر جنگو ارائه می دهد.
پاسخ: سی


25. دستور اجرای سرور توسعه جنگو بر روی پورت 8080 در آدرس IP 12.34.56.78 چیست؟

A. manage.py اجرا 12.34.56.78 8080
ب manage.py -dev 12.34.56.78:8080
C. manage.py runserver 12.34.56.78:8000
D. manage.py اجرا 12.34.56.78:8080
E. manage.py runserver 12.34.56.78:8080 پاسخ
: E


26. جنگو با چه زبان برنامه نویسی نوشته می شود؟

A. PHP
B. Ruby
C. Javascript
D. Java
E. Python پاسخ
: E


27. پس از ساختن یک “برنامه” جدید در پروژه جنگو موجود، چگونه می توانید جنگو را متوجه آن کنید؟

A. هیچ اقدام اضافی مورد نیاز نیست، جنگو به طور خودکار متوجه برنامه های جدید می شود.
ب. دستور «manage.py validate» را اجرا کنید و سپس یک پوسته جدید راه اندازی کنید.
ج. دستور «manage.py syncdb» را اجرا کنید.
D. در settings.py، برنامه را به متغیر PROJECT_APPS اضافه کنید.
E. در settings.py، برنامه جدید را به متغیر INSTALLED_APPS اضافه کنید.
پاسخ: E

28. هدف settings.py چیست؟

الف. برای پیکربندی تنظیمات پروژه جنگو
ب. پیکربندی تنظیمات برای یک برنامه
ج. تنظیم تاریخ و زمان در سرور
D. همگام‌سازی طرح پایگاه داده پاسخ
: A


29. چگونه یک فیلد “نام” را در مدل جنگو با حداکثر طول 255 کاراکتر تعریف می کنید؟

A. name = models.CharField(max_len=255)
B. model.CharField(max_length=255)
C. name = models.CharField(max_length=255)
D. model = CharField(max_length=255)
E. نام = مدل. StringField(max_length=auto) پاسخ
: C


30. تعریف برنامه جنگو خوب چیست؟

الف. یک برنامه جنگو خوب یک عملکرد کوچک و خاص را ارائه می دهد که می تواند در هر تعداد پروژه جنگو استفاده شود.
ب. یک برنامه جنگو خوب یک وب سایت کاملاً کارآمد است که 100٪ پوشش آزمایشی دارد.
ج. یک برنامه جنگو خوب بسیار سفارشی شده است و نمی توان از آن در چندین پروژه استفاده کرد.
پاسخ: الف


31. ساده ترین، سریع ترین و پایدارترین انتخاب استقرار در اکثر موارد با جنگو چیست؟

A. FastCGI
B. mod_wsgi
C. SCGI
D. AJP پاسخ
: B


32. چگونه یک فیلد خاص را از یک ModelForm حذف می کنید؟

A. یک فرم جدید ایجاد کنید، از ModelForm
B استفاده نکنید . از پارامتر exclude در کلاس Meta در فرم
C خود استفاده کنید . فیلد را روی
D پنهان قرار دهید . شما نمی توانید این کار را انجام دهید پاسخ
: B


33. با فرض داشتن یک مدل جنگو به نام کاربر، چگونه یک فیلد کلید خارجی برای این مدل در مدل دیگری تعریف می کنید؟

A. model = ForeignKey (کاربر) جدید
B. کاربر = models.IntegerKey(User)
C. user = models.ForeignKey(User)
D. models.ForeignKey(خود، کاربر) پاسخ
: C


34. چه روش ترجیحی را به مدل جنگو اضافه می کنید تا نمایش رشته ای بهتری از مدل در ادمین جنگو داشته باشید؟

A. __unicode__
B. to_s( self )
C. __translate__
D. __utf_8__ پاسخ
: A


36. Model Form برای چه مواردی استفاده می شود؟

الف. برای مدل کردن یک فرم ورودی برای یک الگو
ب. تعیین قوانین برای فرم صحیح هنگام نوشتن کد جنگو
C. برای تعریف یک فرم بر اساس یک مدل موجود پاسخ
: ج


37. اگر ()MyObject.objects.get با پارامترهایی که با آیتم موجود در پایگاه داده مطابقت ندارند فراخوانی شود، چه اتفاقی می افتد؟

A. استثنا Http404 مطرح می شود.
ب. استثنا DatabaseError مطرح می شود.
ج. استثنا MyObject.DoesNotExist مطرح شده است.
د- شی ایجاد شده و برگردانده می شود.
پاسخ: سی


38. مجموعه ای از برنامه های کاربردی مفید برای استفاده در پروژه های جنگو شما در توزیع رسمی گنجانده شده است. اسم این ماژول چیه؟

A. django.extras
B. django.helpers
C. django.utilities
D. django.ponies
E. django.contrib پاسخ ها
: E


39. نحو صحیح برای گنجاندن نمای کلاسی در URLconf چیست؟

A. (r’^pattern/$’، YourView.as_view())،
B. (r’^pattern/$’، YourView.init())،
C. (r’^pattern/$’، YourView)،
D. (r’^pattern/$’، YourView())، پاسخ
: A


40. دستور شروع یک پروژه جنگو جدید به نام “myproject” چیست؟

A. django-admin.py startproject myproject
B. django-admin.py –start
myproject C. django.py startproject
myproject D. django.py –new
myproject E. django.py پروژه من جدید پاسخ
: A


41. چگونه جنگو را از منطقه زمانی آگاه کنیم؟

A. در settings.py: USE_L10N=True
B. در views.py، وارد کردن منطقه زمانی
C. در views.py، وارد کردن tz
D. در urls.py، وارد کردن منطقه زمانی
E. در settings.py: USE_TZ=True
Ans: E


42. در جنگو چگونه می توانید تمام رکوردهای “کاربر” را از یک پایگاه داده معین بازیابی کنید؟

الف. User.objects.all()
ب. User.objects.all()
ج. User.all_records()
D. User.object.all()
E. User.objects پاسخ
: A


43. چگونه می توانید رفتار و ویژگی های اضافی یک کلاس جنگو را تعریف کنید؟

A. def setUp():
B. class Meta:
C. class __init__:
D. def Meta():
E. def __init__(): پاسخ
: B


44. روش میانبر جنگو برای ارائه آسانتر پاسخ html چیست؟

A. render_to_html
ب. render_to_response
ج. پاسخ_
render D. render پاسخ
: ب


45. دستور جنگو «manage.py validate» چه کاری انجام می دهد؟

A. خطاهای موجود در نظرات شما را بررسی می کند.
ب. خطاهای موجود در قالب های شما را بررسی می کند.
ج. خطاهای موجود در کنترلرهای خود را بررسی می کند.
D. خطاهای موجود در مدل های شما را بررسی می کند.
E. خطاهای موجود در فایل settings.py شما را بررسی می کند.
پاسخ: دی


46. ​​راه صحیح قرار دادن آدرس های مدیریت جنگو چیست؟ از django.contrib import import’) از django.conf.urls الگوهای وارد کردن، شامل، url urlpatterns = patterns(“, ______________________ )

A. url(r’^admin/’، admin.as_view()، name=’admin ),
B. url(r’^admin/’, include(admin) ),
C. url(r’^admin/’ , include(admin.site.urls) ),
D. url(r’^admin/’, admin.urls ),
E. admin.autodiscover() پاسخ
: C


47. سیگنال pre_save در جنگو کجاست

A. از django.db.models import pre_save
B. from django.db.models.signals import pre_save
C. سیگنال pre_save وجود ندارد
D. از django.db.models.signal import pre_save پاسخ
: B


48. با توجه به داده های پایتون: mydata = [ [ 0, ‘Fred’ ], [ 1, ‘Wilma’ ] ] چگونه به داده های موجود در قالب جنگو دسترسی پیدا می کنید؟

A. {% برای d در mydata %}

{% d.1 %}

{% endfor %}
B. {% برای d در mydata -%}

{{ d.1 }}

{% end -%}
C. {% برای d در mydata %}

{{ d.1 }}

{% endfor %}
D. {{ برای d در mydata }}

{{ d[1] }}

{{ endfor }}
E. {% mydata.each |d| %}

{{ d.2 }}

{% پایان %} پاسخ
: ج


49. هدف از تنظیم STATIC_ROOT چیست؟

الف. پیشوند URL را که فایل های استاتیک از آنجا ارائه می شوند را تعیین می کند.
ب. مکانی را تعیین می کند که در آن همه فایل های استاتیک با دستور مدیریت ‘collecstatic’ کپی می شوند تا توسط وب سرور تولید ارائه شوند.
ج. دارایی های ثابت پروژه باید در اینجا ذخیره شوند تا توسط سرور توسعه ارائه شوند.
د. مکان ارائه فایل های آپلود شده توسط کاربر را مشخص می کند.
پاسخ: ب

 


50. چگونه می توان یک DateTimeField با نام ایجاد شده ایجاد کرد و فقط در ایجاد با زمان فعلی پر شد؟

A. ایجاد = models.CreationTimeField()
ب. ایجاد = models.DateTimeField(default=datetime.datetime.now())
ج. ایجاد = models.DateTimeField(auto_now_add=True، auto_now=True)
D. ایجاد = models.DateTimeField (auto_now=True)
E. create = models.DateTimeField(auto_now_add=True) پاسخ
: E

51. تفاوت پروژه و اپلیکیشن در جنگو چیست؟

پاسخ: در جنگو، یک پروژه کل برنامه است و یک برنامه یک ماژول در داخل پروژه است که با یک نیاز خاص سروکار دارد. به عنوان مثال، اگر کل پروژه یک سایت تجارت الکترونیک باشد، در داخل پروژه چندین برنامه مانند اپلیکیشن سایت خرده فروشی، اپلیکیشن سایت خریدار، اپلیکیشن سایت حمل و نقل و غیره خواهیم داشت.


52. رابط مدیریت جنگو چیست؟

پاسخ: جنگو دارای یک رابط مدیریت داخلی کاملاً قابل تنظیم است که به ما امکان می‌دهد همه داده‌های موجود در پایگاه داده برنامه‌ها و مدل‌های ثبت‌شده را ببینیم و تغییراتی در آنها ایجاد کنیم. برای استفاده از جدول پایگاه داده با رابط مدیریت، باید مدل را در فایل admin.py ثبت کنیم.


53. چرخه درخواست/پاسخ جنگو را توضیح دهید.

پاسخ: در چرخه Request/Response ابتدا درخواستی توسط سرور جنگو دریافت می شود. سپس، سرور به دنبال URL منطبق در الگوهای url تعریف شده برای پروژه می گردد. اگر URL منطبقی پیدا نشد، پاسخی با کد وضعیت 404 برگردانده می شود. اگر یک URL مطابقت داشته باشد، کد مربوطه در فایل view مرتبط با URL برای ایجاد و ارسال پاسخ اجرا می شود.


54. مدل در جنگو چیست؟

پاسخ: مدل یک کلاس پایتون در جنگو است که از کلاس django.db.models.Model مشتق شده است. یک مدل در جنگو برای نمایش جدول در پایگاه داده استفاده می شود. برای تعامل با جداول پایگاه داده برنامه ما و دریافت نتایج از آن استفاده می شود.


55. مهاجرت ها در جنگو چیست؟

پاسخ: مهاجرت در جنگو یک فایل پایتون است که شامل تغییراتی است که ما در مدل‌های خود ایجاد می‌کنیم تا بتوان آنها را به یک طرح پایگاه داده در DBMS تبدیل کرد. بنابراین، به‌جای ایجاد تغییرات دستی در طرح‌واره پایگاه داده‌مان با نوشتن پرس‌و‌جوها در پوسته DBMS، می‌توانیم فقط تغییراتی در مدل‌های خود ایجاد کنیم. سپس، می‌توانیم از جنگو برای ایجاد مهاجرت‌ها از آن تغییرات مدل استفاده کنیم و آن مهاجرت‌ها را برای ایجاد تغییرات در طرح پایگاه داده خود اجرا کنیم.


56. نماها در جنگو چیست؟

پاسخ: view در جنگو یک کلاس و/یا تابعی است که درخواستی را دریافت کرده و پاسخی را برمی‌گرداند. یک view معمولاً با الگوهای url مرتبط است و منطق محصور شده در یک view زمانی اجرا می شود که یک درخواست به URL مرتبط با آن اجرا شود. ویو، در میان چیزهای دیگر، داده‌ها را از پایگاه داده با استفاده از مدل‌ها دریافت می‌کند، آن داده‌ها را به قالب‌ها ارسال می‌کند، و قالب رندر شده را به عنوان HttpResponse برای کاربر ارسال می‌کند.


57. تابع include در فایل urls.py در جنگو چه کاربردی دارد؟

پاسخ: همانطور که در جنگو ممکن است برنامه های زیادی وجود داشته باشد، هر برنامه ممکن است URL هایی داشته باشد که به آنها پاسخ می دهد. به جای ثبت همه URL ها برای همه برنامه ها در یک فایل urls.py، هر برنامه فایل urls.py خود را حفظ می کند و در فایل urls.py پروژه، ما از هر فایل urls.py جداگانه هر برنامه با استفاده از تابع include استفاده می کنیم. .


58. چرا جنگو را یک فریم ورک سست جفت شده می نامند؟

پاسخ: جنگو به دلیل معماری MVT که نوعی از معماری MVC است، یک فریمورک با جفت آزاد نامیده می شود. این کمک می کند تا کد سرور را از کد مربوط به مشتری جدا کنید. مدل‌ها و نماهای جنگو از کدهایی که باید روی سرور اجرا شود، مانند گرفتن رکورد از پایگاه داده و غیره مراقبت می‌کنند، و قالب‌ها عمدتاً HTML و CSS هستند که فقط به داده‌هایی از مدل‌هایی که توسط view‌ها ارسال می‌شوند نیاز دارند تا آنها را ارائه دهند. از آنجایی که این مولفه ها مستقل از یکدیگر هستند، جنگو را یک چارچوب سست جفت شده می نامند.


59. به معماری معماری جنگو اشاره کنید ؟

پاسخ:  معماری جنگو شامل

  • مدل‌ها:  این طرحواره پایگاه داده و ساختار داده شما را توصیف می‌کند
  • Views:  آنچه کاربر می بیند را کنترل می کند، View داده ها را از مدل های مناسب بازیابی می کند و هر گونه محاسبه انجام شده روی داده ها را اجرا می کند و آن را به الگو ارسال می کند.
  • الگوها:  تعیین می کند که کاربر چگونه آن را ببیند. توضیح می‌دهد که چگونه داده‌های دریافت‌شده از نماها باید برای نمایش در صفحه تغییر یا قالب‌بندی شوند
  • کنترل کننده:  چارچوب جنگو و تجزیه URL

 

60. چرا جنگو باید برای توسعه وب استفاده شود؟

پاسخ:

  • این اجازه می دهد تا ماژول های کد را به گروه های منطقی تقسیم کنید تا آن را برای تغییر انعطاف پذیر کنید
  • برای سهولت مدیریت وب سایت، مدیریت وب را به صورت خودکار ایجاد می کند
  • این API از پیش بسته بندی شده را برای وظایف معمول کاربر فراهم می کند
  • این به شما سیستم قالب را می دهد تا قالب HTML را برای صفحه وب خود تعریف کنید تا از تکرار کد جلوگیری کنید
  • این به شما امکان می دهد تا مشخص کنید که چه URL برای یک تابع معین باشد
  • این به شما امکان می دهد منطق تجاری را از HTML جدا کنید
  • همه چیز در پایتون است

 

61. توضیح دهید که چگونه می توانید یک پروژه در جنگو ایجاد کنید ؟

جواب:  برای شروع یک پروژه در جنگو، استفاده از دستور $ django-admin.py و سپس با استفاده از دستور
پروژه
_init_.py
manage.py
settings.py را
urls.py می


 

62. توضیح دهید که چگونه می توانید پایگاه داده را در جنگو راه اندازی کنید؟

پاسخ:  می توانید از دستور edit  mysite/setting.py استفاده کنید  ، این یک ماژول معمولی پایتون با سطح ماژول است که تنظیمات جنگو را نشان می دهد.
جنگو به طور پیش فرض از SQLite استفاده می کند. برای کاربران جنگو آسان است و به هیچ نوع نصب دیگری نیاز نخواهد داشت. در صورتی که انتخاب پایگاه داده شما متفاوت است، باید کلیدهای زیر را در مورد  “پیش فرض” DATABASE  برای مطابقت با تنظیمات اتصال پایگاه داده خود انتخاب کنید.

  • موتورها:  می‌توانید پایگاه داده را با استفاده از «django.db.backends.sqlite3»، «django.db.backeneds.mysql»، «django.db.backends.postgresql_psycopg2»، «django.db.backends.oracle» و غیره تغییر دهید.
  • نام:  نام پایگاه داده شما. در صورتی که از SQLite به عنوان پایگاه داده خود استفاده می کنید، در این صورت پایگاه داده یک فایل در رایانه شما خواهد بود، Name باید یک مسیر مطلق کامل، از جمله نام فایل آن فایل باشد.

اگر SQLite را به عنوان پایگاه داده خود انتخاب نمی کنید، باید تنظیماتی مانند رمز عبور، میزبان، کاربر و غیره اضافه شود.

 


63. مثالی بزنید که چگونه می توانید یک VIEW در جنگو بنویسید ؟

پاسخ: View  ها توابع جنگو هستند که یک درخواست را می گیرند و یک پاسخ را برمی گردانند. برای نوشتن یک نمای در جنگو، یک مثال ساده از «Guru99_home» را می‌گیریم که از الگوی Guru99_home.html استفاده می‌کند و از ماژول تاریخ-زمان استفاده می‌کند تا به ما بگوید هر زمان که صفحه به‌روزرسانی می‌شود، ساعت چقدر است. فایلی که باید ویرایش کنیم view.py نام دارد و داخل mysite/myapp/ خواهد بود.

کد زیر را در آن کپی کنید و فایل را
       از datatime import datetime
      از django.shortcuts import render
     def home (درخواست):
return render(درخواست، ‘Guru99_home.html’، {‘right_now’: datetime.utcnow()})
یک بار ذخیره کنید شما VIEW را تعیین کرده اید، می توانید این خط را در urls.py
# url لغو نظر کنید ( r ‘^$’ , ‘mysite.myapp.views.home’ , نام ‘Guru99’)،
آخرین مرحله برنامه وب شما را دوباره بارگیری می کند تا تغییرات توسط وب سرور مشاهده می شود.


 

64. توضیح دهید که چگونه می توانید فایل های استاتیک را در جنگو راه اندازی کنید ؟

پاسخ:  سه مورد اصلی برای راه اندازی فایل های استاتیک در جنگو وجود دارد

  • STATIC_ROOT را در settings.py تنظیم کنید
  • manager.py collectsatic را اجرا کنید
  • یک ورودی Static Files را در   برگه وب PythonAnywhere تنظیم کنید

 

65. ذکر کنید که قالب های جنگو از چه چیزی تشکیل شده است؟

پاسخ:  قالب یک فایل متنی ساده است. می‌تواند هر قالب مبتنی بر متن مانند XML، CSV، HTML، و غیره را ایجاد کند. یک الگو حاوی متغیرهایی است که هنگام ارزیابی الگو با مقادیر جایگزین می‌شوند و برچسب‌هایی (% تگ %) که منطق الگو را کنترل می‌کند.


66. استفاده از Session Framework در جنگو را توضیح دهید؟

پاسخ:  در جنگو، چارچوب جلسه شما را قادر می‌سازد تا داده‌های دلخواه را بر اساس هر بازدیدکننده سایت ذخیره و بازیابی کنید. داده ها را در سمت سرور ذخیره می کند و دریافت و ارسال کوکی ها را خلاصه می کند. Session را می توان از طریق یک میان افزار پیاده سازی کرد.


 

67. توضیح دهید که چگونه می توانید از جلسات مبتنی بر فایل استفاده کنید؟

پاسخ:  برای استفاده از جلسه مبتنی بر فایل، باید  تنظیمات SESSION_ENGINE را  روی “django.contrib.sessions.backends.file” تنظیم کنید.


68. مهاجرت در جنگو را توضیح دهید و چگونه می توانید در SQL انجام دهید؟

پاسخ:  مهاجرت در جنگو به این معنی است که تغییراتی در مدل‌های خود ایجاد کنید، مانند حذف یک مدل، اضافه کردن یک فیلد و غیره در طرح پایگاه داده خود. چندین دستور وجود دارد که برای تعامل با مهاجرت ها استفاده می کنید.

  • مهاجرت
  • مهاجرت ها
  • Sqlmigrate

برای انجام انتقال در SQL، باید عبارت SQL را برای بازنشانی دنباله‌ها برای نام برنامه مشخص چاپ کنید.
django-admin.py sqlsequencreset
از این دستور برای تولید SQL استفاده کنید که مواردی را که یک دنباله با داده های فیلد افزایش یافته به طور خودکار آن همگام نیست را برطرف می کند.


69. ذکر کنید که از چه خط فرمانی می توان برای بارگذاری داده ها در جنگو استفاده کرد؟

پاسخ:  برای بارگیری داده ها در جنگو باید از خط فرمان  Django-admin.py loaddata استفاده کنید. خط فرمان داده ها را جستجو می کند و محتویات فیکسچرهای نامگذاری شده را در پایگاه داده بارگذاری می کند.


70. توضیح دهید که دستور django-admin.py makemessages برای چه مواردی استفاده می شود؟

پاسخ:  این خط فرمان روی کل درخت منبع دایرکتوری فعلی اجرا می شود و تمام رشته های علامت گذاری شده برای ترجمه را انتزاع می کند. این یک فایل پیام در فهرست محلی ایجاد می کند.


71. سبک های وراثت در جنگو را فهرست کنید؟

پاسخ:  در جنگو، سه سبک ارثی ممکن وجود دارد

  • کلاس‌های پایه انتزاعی:  این سبک زمانی استفاده می‌شود که شما فقط می‌خواهید کلاس والدین اطلاعاتی را داشته باشد که نمی‌خواهید برای هر مدل فرزند تایپ کنید.
  • وراثت چند جدولی:  این سبک در صورتی استفاده می شود که یک مدل موجود را زیر طبقه بندی می کنید و نیاز دارید که هر مدل جدول پایگاه داده خود را داشته باشد.
  • مدل‌های پراکسی:  اگر فقط می‌خواهید رفتار سطح پایتون مدل را تغییر دهید، بدون تغییر فیلدهای مدل، می‌توانید از این مدل استفاده کنید.

72. کلاس فیلد جنگو را ذکر کنید؟

پاسخ:  نوع کلاس فیلد را تعیین می کند

  • نوع ستون پایگاه داده
  • ویجت پیش‌فرض HTML که هنگام ارائه یک فیلد فرم مفید است
  • حداقل الزامات اعتبار سنجی مورد استفاده در مدیریت جنگو و در فرم های تولید شده به طور خودکار

73. قالب های جنگو چیست؟

پاسخ : الگو می تواند فرمت هایی مانند XML، HTML و CSV (که فرمت های مبتنی بر متن هستند) ایجاد کند. به طور کلی قالب یک فایل متنی ساده است. از متغیرهایی تشکیل شده است که بعد از ارزیابی الگو با مقادیر جایگزین می شوند و دارای برچسب هایی است که منطق الگو را کنترل می کند.


74. برخی از کاربردهای معمول میان افزارها را در جنگو فهرست کنید.

پاسخ:  برخی از موارد استفاده معمول از میان افزارها در جنگو عبارتند از: مدیریت جلسه، احراز هویت کاربر، حفاظت از جعل درخواست بین سایتی، Gzipping محتوا و غیره.


75. چگونه از view ها در جنگو استفاده می کنید؟ 

پاسخ:  بازدیدها درخواست بازگشت پاسخ را خواهند داد. بیایید یک نمای در جنگو بنویسیم: “مثال” با استفاده از template example.html، با استفاده از ماژول date-time تا زمان دقیق بارگیری مجدد صفحه را به ما بگوید. بیایید فایلی به نام view.py را ویرایش کنیم، و در داخل randomsite/randomapp/ قرار می گیرد.
برای انجام این کار، موارد زیر را در یک فایل ذخیره و کپی کنید:
پیش فرض

از زمان وارد کردن داده ها تاریخ

از django.shortcuts import import رندر

def home (درخواست):

Render render(درخواست، ‘Guru99_home.html’, {‘right_now’: datetime.utcnow()})
پیش فرض

ابتدا باید VIEW را تعیین کنید، و سپس این خط را که در فایل  urls.py قرار دارد، لغو نظر کنید

# url (r ‘^$’، ‘randomsite.randomapp.views.home’، نام ‘example’)،


76. چگونه یک برنامه جنگو بسازید که آزمایشی باشد و دنباله فیبوناچی را نمایش دهد؟

با این کار سایت مجدداً بارگذاری می شود و تغییرات آشکار می شود.

پاسخ: به  خاطر داشته باشید که باید یک عدد شاخص بگیرد و دنباله را خروجی بگیرد. علاوه بر این، باید صفحه ای وجود داشته باشد که جدیدترین توالی های تولید شده را نشان دهد.

یکی از راه حل های ایجاد سری فیبوناچی در زیر آمده است:
پیش فرض

def fib(n):

“پیچیدگی: O(log(n))”

اگر n <= 0:

بازگشت 0

i = n – 1

(a, b) = (1, 0)

(c, d) = (0, 1)

در حالی که i > 0:

اگر من % 2:

(a, b) = (d * b + c * a, d * (b + a) + c * b)

(c, d) = (c * c + d * d, d * (2 * c + d))

i = i / 2

a + b
پیش فرض را برگردانید

در زیر مدلی وجود دارد که آخرین اعداد را پیگیری می کند:

از مدل های وارداتی django.db

کلاس فیبوناچی (models.Model):

پارامتر = models.IntegerField(primary_key=True)

نتیجه = models.CharField(max_length=200)

time = models.DateTimeField() Default
برای مشاهده، به سادگی می توانید از کد زیر استفاده کنید:

 

از مدل ها فیبوناچی وارد می کنند

دف index(درخواست):

نتیجه = هیچ

if request.method==”POST”:

تلاش كردن:

n=int(request.POST.get(‘n’))

بجز:

Http404 را برگردانید

تلاش كردن:

نتیجه = Fibonacci.objects.get(pk=n)

result.time = datetime.now()

به جز DoesNotExist:

نتیجه = str(fib(n))

نتیجه = فیبوناچی (n، نتیجه، datetime.now())

result.save()

بازگشت direct_to_template(درخواست، ‘base.html’, {‘result’:result.result})
می توانید از مدل ها برای دریافت آخرین موجودیت های ‘n’ استفاده کنید.

77. معماری جنگو چیست؟

پاسخ:  جنگو بر روی معماری MVC اجرا می شود. در زیر اجزای تشکیل دهنده معماری جنگو آمده است:

  • مدل‌ها:  مدل‌ها موارد پشتیبان مانند طرح‌واره پایگاه‌داده را درست می‌کنند. (روابط)
  • نماها:  نماها کنترل می کنند که چه چیزی به کاربر نهایی نشان داده شود.
  • الگوها:  الگوها با قالب بندی نما سروکار دارند.
  • کنترلر:  کنترل کامل Models را در اختیار می گیرد. چارچوب MVC را می توان با تلویزیون کابلی با کنترل از راه دور مقایسه کرد. یک مجموعه تلویزیون View است (که با کاربر نهایی تعامل دارد)، ارائه دهنده کابل مدل است (که در back-end کار می کند) و کنترل کننده از راه دور است که کنترل می کند کدام کانال را انتخاب کرده و از طریق View نمایش دهد.

78. Session Framework در چارچوب جنگو چه می کند؟

پاسخ:  چارچوب جلسه در جنگو داده ها را در سمت سرور ذخیره می کند و با کاربران نهایی تعامل می کند. Session به طور کلی با ابزار میانی استفاده می شود. همچنین به دریافت و ارسال کوکی ها برای احراز هویت کاربر کمک می کند.


 

79. آیا می توانید شی سینگلتون در پایتون ایجاد کنید؟ اگر بله، چگونه این کار را انجام می دهید؟

پاسخ:  بله، می توانید یک شیء تکی ایجاد کنید. در اینجا نحوه انجام آن آمده است:

پیش فرض

12

3

4

5

class Singleton(object):def __new__(cls,*args,**kwargs):

اگر نه hasattr(cls,’_inst’):

cls._inst = super(Singleton,cls).__new__(cls,*args,**kwargs)

بازگشت cls._inst


80. استراتژی های کش را که در جنگو می شناسید ذکر کنید!

پاسخ:  چند استراتژی ذخیره سازی که در جنگو موجود است به شرح زیر است:

  • ذخیره سیستم فایل
  • کش در حافظه
  • استفاده از Memcached
  • ذخیره سازی پایگاه داده

81. نوع ارثی در جنگو چیست؟

پاسخ:  3 نوع ارثی در جنگو وجود دارد

  • کلاس های پایه انتزاعی
  • ارث بری چند جدولی
  • مدل های پروکسی

 

82. به نظر شما محدودیت   نقشه‌برداری رابطه شی جنگو (ORM) چیست؟

پاسخ:  اگر داده پیچیده باشد و از اتصالات متعدد با استفاده از SQL تشکیل شده باشد واضح تر خواهد بود.

اگر عملکرد برای شما نگرانی است، ORM انتخاب شما نیست. به طور کلی. نگاشت رابطه شی گزینه خوبی برای ایجاد یک پرس و جو بهینه شده در نظر گرفته می شود، SQL در مقایسه با ORM دست برتر را دارد.


 

83. چگونه پروژه جنگو را با “Hello World!” شروع کنیم؟ فقط به پروژه جنگو سلام کنید.

پاسخ:  برای شروع پروژه جنگو 7 مرحله در پیش است.

مرحله 1:  پروژه را در ترمینال/پوسته ایجاد کنید

f2finterview: ~$ django-admin.py شروع پروژه نمونه پروژه

مرحله 2:  ایجاد برنامه

f2finterview: ~$ نمونه سی دی پروژه/

f2finterview:~/sampleproject$ python manager.py startapp sampleapp

مرحله 3:  پوشه قالب و فایل index.html را بسازید

f2finterview:~/sampleproject$ الگوهای mkdir

f2finterview:~/sampleproject$ قالب های سی دی/

f2finterview:~/sampleproject/templates$ touch index.html

مرحله 4:  پیکربندی اولیه را در settings.py پیکربندی کنید

PROJECT_PATH و PROJECT_NAME را اضافه کنید

واردات سیستم عامل

PROJECT_PATH = os.path.dirname(os.path.abspath(__file__))

PROJECT_NAME = “پروژه نمونه”

مسیر فهرست راهنماها را اضافه کنید

TEMPLATE_DIRS = (

os.path.join(PROJECT_PATH، «الگوها»)،

)

برنامه خود را به INSTALLED_APPS اضافه کنید

INSTALLED_APPS = (

‘sampleapp’،

)

مرحله 5:  پیکربندی آدرس اینترنتی در urls.py

از django.conf.urls.defaults الگوهای واردات، شامل، url

urlpatterns = الگوها(,

url(r’^$’، ‘sampleproject.sampleapp.views.index’، name=’index’)،

)

مرحله 6:  روش ایندکس را در views.py اضافه کنید

از django.shortcuts وارد کردن render_to_response، get_object_or_404

از django.template import RequestContext

دف index(درخواست):

Welcome_msg = ‘سلام دنیا’

بازگشت render_to_response(‘index.html’,locals(),context_instance=RequestContext(درخواست))

مرحله 7:  Welcome_msg را در index.html اضافه کنید

<!DOCTYPE html>

<html>

<بدن>

<h1>اولین عنوان من برای Say…</h1>

<p>{{welcome_msg}}</p>

</body>

</html>


 

84. چگونه در جنگو به جای نام کاربری با ایمیل وارد شوید؟

پاسخ:  از روش نمونه زیر برای ورود با ایمیل یا نام کاربری استفاده کنید.

از تنظیمات وارد کردن django.conf
از django.contrib.auth واردات تأیید اعتبار، ورود به سیستم، REDIRECT_FIELD_NAME
از django.میانبرها وارد کردن render_to_response
از django.contrib.sites.models import Site
from django.template import
Context.demplate import Context.demplate from djangotchest. never_cache واردات
از django.views.decorators.csrf واردات csrf_protect
csrf_protect
never_cache
دف ورود به سیستم (درخواست، redirect_field_name = REDIRECT_FIELD_NAME، authentication_form = LoginForm):
redirect_to = request.REQUEST.get (redirect_field_name، settings.LOGIN_REDIRECT_URL)
فرم = authentication_form ()
current_site = Site.objects.get_current()
if request.method == “POST”:
pDict =request.POST.copy()
form = authentication_form(data=request.POST)
if form.is_valid():
نام کاربری = form.cleaned_data[‘username’] password = form.cleaned_data[‘password’] try:
user = User.objects.get (ایمیل = نام کاربری)
نام کاربری = user.username
به جز User.DoesNotExist:
username: نام
کاربر = اعتبار (نام کاربری = نام کاربری و رمز = رمز عبور)
. # ورود کاربر در
ورود (درخواست، کاربران)
بازگشت HttpResponseRedirect ( redirect_to)
else:
form = authentication_form()
request.session.set_test_cookie()
if Site._meta.installed:
current_site = Site.objects.get_current()
else:
current_site = RequestSite(درخواست)
render_to_response(‘login.html’,locals(), context_instance=RequestContext(درخواست))


 

85. جنگو چگونه یک درخواست را پردازش می کند؟

پاسخ:  وقتی کاربر صفحه‌ای را از سایت جنگو شما درخواست می‌کند، این الگوریتمی است که سیستم برای تعیین کد پایتون اجرا می‌کند:
جنگو ماژول URLconf ریشه را برای استفاده تعیین می‌کند. معمولاً، این مقدار تنظیم ROOT_URLCONF است، اما اگر شی HttpRequest ورودی دارای ویژگی به نام urlconf (تنظیم شده توسط پردازش درخواست میان‌افزار) باشد، مقدار آن به جای تنظیم ROOT_URLCONF استفاده می‌شود.
جنگو آن ماژول پایتون را بارگیری می کند و به دنبال الگوهای url متغیر می گردد. این باید یک لیست پایتون باشد، در قالبی که توسط تابع ()django.conf.urls.patterns برگردانده شده است
.

هنگامی که یکی از رجکس ها مطابقت داشت، جنگو نمای داده شده را وارد کرده و فراخوانی می کند، که یک تابع ساده پایتون (یا یک نمای مبتنی بر کلاس) است. View یک HttpRequest به عنوان اولین آرگومان خود و هر مقداری که در regex گرفته شده است به عنوان آرگومان باقی مانده ارسال می شود.

اگر هیچ regex مطابقت نداشته باشد، یا در هر نقطه از این فرآیند استثنایی مطرح شود، جنگو یک نمای مدیریت خطای مناسب را فراخوانی می‌کند.


86. چگونه آخرین رکورد را بر اساس تاریخ در جنگو فیلتر کنیم؟

پاسخ: پیام ها (models.Model):
      message_from = models.ForeignKey(User,related_name=”%(class)s_from”)
message_to = models.ForeignKey(User,related_name=”%(class)s_to”)
message=models.CharField (max_length=140,help_text=”پیام شما”)
create_on = models.DateTimeField(auto_now_add=True)
کلاس Meta:
db_table = ‘پیام ها’

Query :messages = Messages.objects.filter(message_to = user).order_by(‘-created_on’)[0]

خروجی:

پیام_از | پیام_به | پیام | ایجاد_روی

——————|——————|——————–|———————

استفان | آنتو | سلام. چطوری؟ | 2012-10-09 14:27:48


 

87. چگونه داده های مدل های جنگو را با استفاده از تاریخ پایتون فیلتر کنیم؟

پاسخ:  مدل زیر را برای ذخیره پیام‌ها با جدول‌های زمانی
کلاس Message(models.Model):
from = models.ForeignKey(User,related_name = “%(class)s_from”)
تا = models.ForeignKey(User, related_name = “%(class )s_to”)
msg = models.CharField(max_length=255)
rating = models.IntegerField(blank=’True’,default=0)
create_on = models.DateTimeField(auto_now_add=True)
updated_on = models.DateTime_now
فیلتر کردن پیام‌ها با تاریخ و زمان مشخص شده
امروز = date.today().strftime(‘%Y-%m-%d’)

دیروز = date.today() – timedelta(روز=1)
دیروز =دیروز. strftime (‘%Y-%m-%d’)

this_month = date.today().strftime(‘%m’)
last_month = date.today() – timedelta(days=32)
last_month = last_month.strftime(‘%m’)
this_year = date.today().strftime( ‘%Y’)

last_year = date.today() – timedelta(days=367)
last_year = last_year.strftime(‘%Y’)

Today_msgs = Message.objects.filter(created_on__gte=today).count
()
above_msgs = Message.objects.filter (created_on__gte=yesterday).count() this_month_msgs = Message.objects.filter(created_on__month=created_on__month=this_month,year). ()
last_month_msgs = Message.objects.filter(created_on__month=last_month,created_on__year=this_year).count()
this_year_msgs = Message.objects.filter(created_on__year=this_year).count()
last_year_msgs = last_year_msgs =last_objects. .شمردن()


 

88. جنگو به چه معناست؟

پاسخ:  جانگو به افتخار جانگو راینهارت، یک گیتاریست جاز کولی از دهه 1930 تا اوایل دهه 1950 که به عنوان یکی از بهترین گیتاریست های تمام دوران شناخته می شود، نامگذاری شده است.


 

89. جنگو از کدام الگوی معماری پیروی می کند؟

پاسخ:  جنگو از الگوی معماری Model-View Controller (MVC) پیروی می کند.


 

90. آیا جنگو یک چارچوب وب سطح بالا است یا فریمورک سطح پایین؟

پاسخ:  جنگو یک چارچوب وب سطح بالا پایتون است که برای توسعه سریع و طراحی واقعی و تمیز طراحی شده است.


 

91. جانگو را چگونه تلفظ می کنید؟

پاسخ: جنگو JANG-oh تلفظ می شود. اینجا D ساکت است.


 

92. جانگو چگونه کار می کند؟

پاسخ:  جنگو را می توان به اجزای زیادی تقسیم کرد:

فایل Models.py:  این فایل مدل داده شما را با گسترش یک خط کد شما در جداول کامل پایگاه داده و اضافه کردن یک بخش مدیریت از پیش ساخته شده برای مدیریت محتوا، تعریف می کند.

فایل Urls.py:  از عبارت منظم برای گرفتن الگوهای URL برای پردازش استفاده می کند.

فایل Views.py:  قسمت اصلی جنگو است. پردازش واقعی در نظر اتفاق می افتد.
هنگامی که یک بازدیدکننده در صفحه جنگو قرار می گیرد، ابتدا جنگو الگوی URL هایی را که ایجاد کرده اید بررسی می کند و از اطلاعات برای بازیابی نما استفاده می کند. پس از آن view درخواست را پردازش می کند، در صورت لزوم پایگاه داده شما را پرس و جو می کند و اطلاعات درخواستی را به الگو ارسال می کند.
پس از آن الگو داده ها را در طرحی که شما ایجاد کرده اید رندر می کند و صفحه را نمایش می دهد.


 

93. کدام بنیاد فریمورک وب جنگو را مدیریت می کند؟

پاسخ:  چارچوب وب جنگو توسط یک سازمان مستقل و غیرانتفاعی به نام بنیاد نرم افزار جنگو (DSF) مدیریت و نگهداری می شود.


94. آیا جنگو پایدار است؟

پاسخ:  بله، جانگو کاملاً پایدار است. بسیاری از شرکت‌ها مانند Disqus، Instagram، Pinterest و Mozilla سال‌هاست که از جنگو استفاده می‌کنند.


 

95. ویژگی های موجود در چارچوب وب جنگو چیست؟

پاسخ:  ویژگی های موجود در  چارچوب وب جنگو  عبارتند از:

  • رابط مدیریت (CRUD)
  • الگوسازی
  • رسیدگی به فرم ها
  • بین المللی شدن
  • جلسه، مدیریت کاربر، مجوزهای مبتنی بر نقش
  • نقشه برداری شی رابطه ای (ORM)
  • چارچوب تست
  • مستندات فوق العاده

 

96. مزایای استفاده از جنگو برای توسعه وب چیست؟

پاسخ:

  • این به شما کمک می کند که ماژول های کد را به گروه های منطقی تقسیم کنید تا آن را برای تغییر انعطاف پذیر کنید.
  • مدیریت وب را به صورت خودکار ایجاد می کند تا مدیریت وب سایت را آسان کند.
  • این API از پیش بسته بندی شده را برای وظایف معمول کاربر فراهم می کند.
  • این سیستم قالب را برای تعریف قالب HTML برای صفحه وب شما فراهم می کند تا از تکرار کد جلوگیری شود.
  • این به شما امکان می دهد تا مشخص کنید که URL برای یک تابع مشخص چیست.
  • این به شما امکان می دهد منطق تجاری را از HTML جدا کنید.

97. چگونه در جنگو پروژه ایجاد کنیم؟

جواب:  برای شروع یک پروژه در جنگو، استفاده از دستور  $ django-admin.py  و سپس با استفاده از دستور زیر:
پروژه
_init_.py
manage.py
settings.py را
urls.py می


98. سبک های ارثی در جنگو چیست؟

پاسخ: سه سبک ارثی در جنگو وجود دارد:

1) کلاس‌های پایه انتزاعی:  این سبک زمانی استفاده می‌شود که شما فقط می‌خواهید کلاس والدین اطلاعاتی را داشته باشد که نمی‌خواهید برای هر مدل فرزند تایپ کنید.

2) وراثت چند جدولی:  این سبک در صورتی استفاده می شود که شما یک مدل موجود را زیر کلاس بندی می کنید و نیاز دارید که هر مدل جدول پایگاه داده خود را داشته باشد.

3) مدل‌های پراکسی:  اگر فقط بخواهید رفتار سطح پایتون مدل را تغییر دهید، بدون تغییر فیلدهای مدل، از این سبک استفاده می‌شود.


99. چگونه می توانید پایگاه داده را در Djanago راه اندازی کنید ؟

پاسخ: پاسخ:  برای راه اندازی پایگاه داده در جنگو، می توانید از دستور edit mysite/setting.py استفاده کنید، این یک ماژول معمولی پایتون با سطح ماژول است که تنظیمات جنگو را نشان می دهد.
به طور پیش فرض، جنگو از پایگاه داده SQLite استفاده می کند. برای کاربران جنگو آسان است زیرا به هیچ نوع نصب دیگری نیاز ندارد. در مورد سایر پایگاه‌های داده، برای مطابقت با تنظیمات اتصال پایگاه داده، باید کلیدهای زیر را در مورد «پیش‌فرض» DATABASE انتخاب کنید.

موتورها:  می‌توانید پایگاه داده را با استفاده از «django.db.backends.sqlite3»، «django.db.backeneds.mysql»، «django.db.backends.postgresql_psycopg2»، «django.db.backends.oracle» و غیره تغییر دهید.

نام:  نام پایگاه داده شما. در صورتی که از SQLite به عنوان پایگاه داده خود استفاده می کنید، در این صورت پایگاه داده یک فایل در رایانه شما خواهد بود، Name باید یک مسیر مطلق کامل، از جمله نام فایل آن فایل باشد.
توجه:  اگر SQLite را به عنوان پایگاه داده خود انتخاب نمی کنید، باید تنظیماتی مانند رمز عبور، میزبان، کاربر و غیره را در پایگاه داده خود اضافه کنید.


100. قالب های جنگو شامل چه چیزهایی هستند؟

پاسخ:  الگو یک فایل متنی ساده است. این می تواند هر قالب مبتنی بر متن مانند XML، CSV، HTML و غیره را ایجاد کند. یک الگو حاوی متغیرهایی است که هنگام ارزیابی الگو با مقادیر جایگزین می شوند و برچسب هایی (%tag%) که منطق الگو را کنترل می کند.


101. آیا جنگو یک سیستم مدیریت محتوا (CMS) است؟

پاسخ:  نه، جنگو یک CMS نیست. در عوض، این یک چارچوب وب و یک ابزار برنامه نویسی است که به شما امکان می دهد وب سایت بسازید.


102. استفاده از session frame در جنگو چیست؟

پاسخ : چارچوب جلسه شما را برای ذخیره و بازیابی داده های دلخواه بر اساس بازدیدکننده هر سایت تسهیل می کند. داده ها را در سمت سرور ذخیره می کند و دریافت و ارسال کوکی ها را خلاصه می کند. Session را می توان از طریق یک میان افزار پیاده سازی کرد.

104.  جنگو را توضیح دهید.

پاسخ جنگو یک فریم ورک اپلیکیشن تحت وب است که یک منبع باز و رایگان است. جنگو به زبان پایتون نوشته شده است. این یک چارچوب وب سمت سرور است که توسعه سریع وب سایت های امن و قابل نگهداری را فراهم می کند.


105.  جنگو به چه معناست؟

پاسخ جانگو راینهارت، نوازنده گیتاریست جاز کولی از دهه 1930 تا اوایل دهه 1950 بود که به عنوان یکی از بهترین گیتاریست های تمام دوران شناخته می شود. نام جانگو به نام این شخص داده شد.


 

106.  جنگو از کدام الگوی معماری پیروی می کند؟

پاسخ جنگو از الگوی معماری Model-View-Template (MVT) پیروی می کند.

نمودار زیر جریان کنترل مبتنی بر MVT را نشان می دهد.

درخواست توسط کاربر برای یک منبع به جنگو انجام می شود، جنگو به عنوان یک کنترل کننده کار می کند و منبع موجود در URL را بررسی می کند.

هنگامی که نگاشت URL پیدا می شود، نمایی نامیده می شود که با مدل و الگو تعامل دارد، یک الگو را ارائه می دهد.

پس از آن جنگو به کاربر پاسخ می دهد و یک الگو را به عنوان پاسخ ارسال می کند.


 

107.  معماری جنگو را توضیح دهید.

پاسخ جنگو از الگوی MVT (الگوی مشاهده مدل) پیروی می کند. کمی با MVC متفاوت است.

مدل:  لایه دسترسی به داده است. این شامل همه چیز در مورد داده است، به عنوان مثال، نحوه دسترسی به آن، نحوه اعتبار سنجی، رفتارهای آن و روابط بین داده ها.

بیایید یک مثال را ببینیم. ما در حال ایجاد مدل Employee هستیم که دارای دو فیلد first_name و last_name است.

از مدل های وارداتی django.db

کارمند کلاس (models.Model):

first_name = models.CharField(max_length=30)

last_name = models.CharField(max_length=30)

نمایش:  لایه منطق تجاری است. این لایه حاوی منطقی است که به مدل دسترسی پیدا می کند و به قالب مناسب موکول می شود. مانند پلی بین مدل و قالب است.

زمان واردات

# دیدگاه های خود را در اینجا ایجاد کنید.

از django.http واردات HttpResponse

دف index(درخواست):

now = datetime.datetime.now()

html = “<html><body><h3>اکنون زمان %s است.</h3></body></html>” % اکنون

بازگشت HttpResponse(html) # الگو را در HttpResponse رندر می کند

الگو:  یک لایه ارائه است. این لایه حاوی تصمیمات مربوط به ارائه است، به عنوان مثال، چگونه چیزی باید در یک صفحه وب یا نوع دیگری از سند نمایش داده شود.

برای پیکربندی الگوها، باید تعدادی ورودی در فایل settings.py ارائه کنیم.

الگوها = [

{

‘BACKEND’: ‘django.template.backends.django.DjangoTemplates’،

‘DIRS’: [os.path.join(BASE_DIR,’templates’)]،

‘APP_DIRS’: درست است،

‘گزینه ها’: {

‘context_processors’: [

‘django.template.context_processors.debug’،

‘django.template.context_processors.request’،

‘django.contrib.auth.context_processors.auth’،

‘django.contrib.messages.context_processors.messages’،

]


 

108.  نحوه کار جنگو را توضیح دهید؟

پاسخ جنگو را می توان به اجزای زیر تقسیم کرد:

Models.py  : فایل Models.py مدل داده شما را با گسترش خط کد شما در جداول کامل پایگاه داده تعریف می کند و یک بخش مدیریت از پیش ساخته شده برای مدیریت محتوا اضافه می کند.

Urls.py  : از یک عبارت منظم برای گرفتن الگوهای URL برای پردازش استفاده می کند.

Views.py:  این بخش اصلی جنگو است. منطق ارائه در این تعریف شده است.

هنگامی که یک بازدیدکننده از صفحه جنگو بازدید می کند، ابتدا جنگو الگوی URL هایی را که ایجاد کرده اید بررسی می کند و از این اطلاعات برای بازیابی نما استفاده می کند. سپس این مسئولیت بررسی درخواست، پرس و جو از پایگاه داده شما در صورت لزوم، و ارسال اطلاعات درخواستی به یک الگو است.

سپس الگو داده ها را در طرحی که شما ایجاد کرده اید ارائه می کند و صفحه را نمایش می دهد.


 

109.  بنیادی که چارچوب وب جنگو را مدیریت می کند نام ببرید؟

پاسخ جنگو توسط یک سازمان مستقل و غیرانتفاعی به نام . هدف این بنیاد ترویج، پشتیبانی و پیشرفت چارچوب وب جنگو است.


 

110.  در مورد ثبات جنگو نظر دهید؟

پاسخ جنگو یک چارچوب توسعه وب کاملاً پایدار است. شرکت‌های زیادی مانند Disqus، Instagram، Pinterest و Mozilla هستند که سال‌ها از جنگو استفاده می‌کنند.


 

111.   ویژگی های موجود در چارچوب وب جنگو را مشخص کنید؟

پاسخ ویژگی های موجود در چارچوب وب جنگو عبارتند از:

رابط مدیریت (CRUD)

الگوسازی

رسیدگی به فرم ها

بین المللی شدن

یک جلسه، مدیریت کاربر، مجوزهای مبتنی بر نقش

نقشه برداری شی رابطه ای (ORM)

چارچوب تست

مستندات فوق العاده


 

112.   مزایای جنگو را توضیح دهید؟

پاسخ مزایای جنگو:

چارچوب توسعه وب جنگو یک چارچوب پایتون است که یادگیری آن آسان است.

واضح و خواندنی است.

همه کاره است.

نوشتن سریع است.

بدون حفره در طراحی

امن است.

مقیاس پذیر است.

همه کاره است.

 


 

113.  مضرات جنگو چیست؟

پاسخ در زیر لیستی از معایب جنگو آمده است:

ماژول های جنگو حجیم هستند.

این کاملا بر اساس Django ORM است.

اجزا با هم مستقر می شوند.

برای کار با آن باید سیستم کامل را بشناسید.


 

114.   سبک های ارثی در جنگو چیست؟

پاسخ سه سبک ارثی در جنگو وجود دارد:

1) کلاس پایه انتزاعی: در این کلاس تنها برای نگهداری اطلاعاتی که نمی خواهید برای هر مدل فرزند تایپ کنید، از این سبک استفاده می شود.

2) وراثت چند جدولی: این سبک وراثت در صورتی استفاده می شود که شما یک مدل موجود را زیر طبقه بندی می کنید و نیاز دارید که هر مدل جدول پایگاه داده خود را داشته باشد.

3) مدل های پراکسی: اگر فقط بخواهید رفتار سطح پایتون مدل را تغییر دهید، بدون تغییر فیلدهای مدل، از مدل های پروکسی استفاده می شود.


 

115.  آیا جنگو یک سیستم مدیریت محتوا یعنی CMS است؟

پاسخ نه، جنگو یک CMS نیست. اما، این یک چارچوب وب و یک ابزار برنامه نویسی است که به شما امکان می دهد وب سایت بسازید.


 

116.  آیا می توانید فایل های استاتیک را در جنگو راه اندازی کنید؟ چگونه؟

پاسخ بله ما میتوانیم. برای راه اندازی فایل های استاتیک در جنگو باید سه چیز اصلی را تنظیم کنیم:

1) STATIC_ROOT را در settings.py تنظیم کنید

2) manager.py جمع آوری static را اجرا کنید

3) ورود Static Files در برگه وب PythonAnywhere


 

117.  برخی از کاربردهای معمولی میان افزارها در جنگو چیست؟

پاسخ برخی از کاربردهای میان افزار در جنگو عبارتند از:

مدیریت جلسات،

از احراز هویت استفاده کنید

حفاظت از جعل درخواست کراس سایت

Gzipping محتوا


118.  کاربرد نوع کلاس فیلد جنگو چیست؟

پاسخ نوع کلاس فیلد جنگو مشخص می کند:

نوع ستون پایگاه داده

ویجت پیش‌فرض HTML که هنگام رندر کردن یک فیلد فرم استفاده می‌شد.

حداقل الزامات اعتبار سنجی مورد استفاده در ادمین جنگو.

فرم های تولید شده به صورت خودکار


 

119.  استفاده از Django-admin.py و manager.py را توضیح دهید؟

پاسخ admin.py: این ابزار خط فرمان جنگو برای کارهای اداری است.

Manage.py: این فایل به طور خودکار در هر پروژه جنگو ایجاد می شود. این یک لفاف نازک در اطراف Django-admin.py است. کاربرد زیر را دارد:

این بسته پروژه شما را در sys.path قرار می دهد.

DJANGO_SETTING_MODULE متغیر محیطی است که برای اشاره به فایل setting.py پروژه شما استفاده می شود.


120.  سیگنال ها در جنگو چیست؟

پاسخ سیگنال ها در جنگو قطعاتی از کد هستند که حاوی اطلاعاتی در مورد آنچه اتفاق می افتد هستند. دیسپچر برای ارسال سیگنال ها و گوش دادن به آن سیگنال ها استفاده می شود.


 

121.  دو پارامتر مهم در سیگنال ها کدامند؟

پاسخ دو پارامتر مهم در سیگنال ها عبارتند از:

Receiver: تابع callback که به سیگنال متصل می شود را مشخص می کند.

فرستنده: فرستنده خاصی را مشخص می کند که از آنجا سیگنال دریافت می شود.


122.  چگونه URL ها را در جنگو مدیریت کنیم؟

برای مدیریت URL در جنگو، ماژول django.urls توسط چارچوب جنگو استفاده می شود.

در زیر فایل urls.py پروژه آورده شده است، اجازه دهید ببینیم چگونه به نظر می رسد:

// urls.py

از django.contrib import import

از مسیر واردات django.urls

الگوهای url = [

مسیر (‘admin/’, admin.site.urls),

]

می‌توانیم ببینیم که جنگو قبلاً یک URL در اینجا برای ادمین ذکر کرده است. مسیر تابع اولین آرگومان را به عنوان مسیری از نوع رشته یا regex می گیرد.

نمای آرگومان یک تابع نمایش است که برای برگرداندن پاسخ (الگو) به کاربر استفاده می شود.

ماژول django.urls شامل توابع مختلفی است، مسیر (route, view, kwargs, name) یکی از آنهایی است که برای نگاشت URL و فراخوانی نمای مشخص شده استفاده می شود.


 

123.  جلسه جنگو چیست؟

پاسخ در Django session مکانیزمی برای ذخیره اطلاعات در سمت سرور در طول تعامل با برنامه وب است. Session در پایگاه داده ذخیره می شود و همچنین به طور پیش فرض به جلسات مبتنی بر فایل و حافظه پنهان اجازه می دهد.


124  نقش کوکی در جنگو را توضیح دهید؟

پاسخ کوکی چیزی نیست جز یک قطعه کوچک از اطلاعات که در مرورگر مشتری ذخیره می شود. از کوکی ها برای ذخیره داده های کاربر در یک فایل به طور دائم (یا برای مدت زمان مشخص) استفاده می شود. برای هر کوکی تاریخ و زمان انقضا وجود دارد و زمانی که منقضی شد به طور خودکار حذف می شود. روش‌های داخلی برای تنظیم و واکشی کوکی وجود دارد که توسط جنگو ارائه شده است.

متد set_cookie() برای تنظیم یک کوکی و متد get() برای دریافت کوکی استفاده می شود.

request.COOKIES[‘key’] آرایه‌ای است که می‌توان از آن برای دریافت مقادیر کوکی استفاده کرد.

از django.shortcuts import import رندر

از django.http واردات HttpResponse

Def setcookie(درخواست):

پاسخ = HttpResponse (“مجموعه کوکی”)

answer.set_cookie(‘java-tutorial’, ‘javatpoint.com’)

پاسخ بازگشت

def getcookie(درخواست):

tutorial = request.cookies[‘java-tutorial’]

return HttpResponse(“java tutorials @: “+ tutorial);

 


 

125. تفاوت فلاسک و جنگو چیست؟

عامل مقایسه جانگو فلاسک
نوع پروژه از پروژه های بزرگ پشتیبانی می کند برای پروژه های کوچکتر ساخته شده است
قالب ها، ادمین و ORM ساخته شده در نیاز به نصب دارد
سهولت یادگیری نیاز به یادگیری و تمرین بیشتر دارد آسان برای یادگیری
انعطاف پذیری امکان توسعه کامل وب بدون نیاز به ابزارهای شخص ثالث را فراهم می کند انعطاف پذیرتر است زیرا کاربر می تواند هر ابزار شخص ثالث را با توجه به انتخاب و نیاز خود انتخاب کند
اشکال زدایی بصری Visual Debug را پشتیبانی نمی کند از Visual Debug پشتیبانی می کند
نوع چارچوب باتری ها گنجانده شده است ساده، سبک وزن
ابزار بوت استرپینگ ساخته شده است در دسترس نیست

 


126.  چگونه نسخه جنگو نصب شده روی سیستم خود را بررسی می کنید؟

پاسخ:  

برای بررسی نسخه Django نصب شده بر روی سیستم خود، می توانید خط فرمان را باز کرده و دستور زیر را وارد کنید:

  • python -m django –نسخه

همچنین می توانید جنگو را وارد کنید و از متد get_version() به صورت زیر استفاده کنید:

1
2
importdjango
print(django.get_version())

 


127. کاربرد میان افزارها در جنگو چیست؟

پاسخ: از میان افزارها برای تغییر درخواست استفاده می شود، یعنی شی HttpRequest که به view ارسال می شود، برای تغییر شی HttpResponse که از view برگردانده شده است و برای انجام عملیات قبل از اجرای view استفاده می شود.


128. نقش گیرنده و فرستنده در سیگنال ها چیست؟

  • گیرنده تابع تماس است که به سیگنال متصل می شود
  • فرستنده یک فرستنده خاص را برای دریافت سیگنال از آن مشخص می کند

129. قالب های جنگو شامل چه چیزهایی هستند؟

پاسخ: قالب‌های جنگو شامل بخش‌های ثابت خروجی HTML مورد نظر و همچنین برخی نحو خاص است که نحوه درج محتوای پویا را توضیح می‌دهد.


130. چگونه کاربر فوق العاده در جنگو ایجاد کنیم؟

برای ایجاد یک کاربر فوق العاده،

  • با استفاده از دستور django-admin startproject پروژه ایجاد کنید   .
  • انتقال به محل پروژه و اجرا  پایتون  manage.py  makemigrations && پایتون  manage.py  مهاجرت && پایتون  manage.py  createsuperuser

131. چگونه یک برنامه ساده در جنگو ایجاد کنیم؟

برای ایجاد یک برنامه ساده از دستور  django-admin startproject  و به دنبال آن نام برنامه استفاده کنید.


 

132. ORM چیست؟ مزایای ORM

ORM (نگاشت شیء رابطه ای) یک تکنیک برنامه نویسی برای تبدیل داده ها بین سیستم های نوع ناسازگار با استفاده از زبان های برنامه نویسی شی گرا است.

مزایا عبارتند از:

  • پشتیبانی همزمان
  • مدیریت کش

133. چگونه یک مدل در جنگو ایجاد کنیم؟

شی مدل را در  فایل models.py اضافه  کنید، تنظیمات به روز شده را برای برنامه جدید ایجاد شده با افزودن آن به  بخش INSTALLED_APPS  در  settings.py اضافه کنید ، مهاجرت ها را انجام دهید و طرح پایگاه داده را تأیید کنید.


 

134. مهاجرت در جنگو چیست؟

مهاجرت ها راهی برای انتشار تغییرات ایجاد شده در مدل در طرحواره پایگاه داده (افزودن یک فیلد، حذف یک مدل و غیره) است.


135. چگونه مهاجرت ها را در جنگو انجام دهیم؟

برای انجام مهاجرت، ایجاد یا به روز رسانی یک مدل و در دایرکتوری برنامه، اجرای دستور  ./ manage.py  makemigrations <نام برنامه> && ./ manage.py  مهاجرت <نام برنامه>


136. چگونه کش را در جنگو پاک کنیم؟

برای پاک کردن کش،  متد clear() را  از  django.core.cache  در یک اسکریپت پایتون اجرا کنید.


137. Rest API چیست؟

REST API یک رابط برنامه کاربردی است که از درخواست های HTTP برای دریافت، ارسال، ارسال و حذف داده ها استفاده می کند.


 

138. چگونه در جنگو API ایجاد کنیم؟

دایرکتوری پروژه ایجاد کنید، محیط مجازی پایتون ایجاد کنید و آن را فعال کنید، Django و  djangorestframework را  با استفاده از  دستور pip install نصب کنید . در همان فهرست پروژه، پروژه را با استفاده از دستور  django-admin.py  startproject api ایجاد کنید. برنامه را راه اندازی کنید. اضافه کردن  rest_framework  و برنامه Djano به INSTALLED_APPS به تنظیمات. باز کردن  API / urls.py  و اضافه کردن آدرس ها برای برنامه جنگو می باشد. سپس می‌توانیم مدل‌ها را ایجاد کنیم و مهاجرت‌ها را انجام دهیم، سریال‌ساز ایجاد کنیم و در نهایت نماها را سیم‌کشی کنیم.


139. DRF کار قاب استراحت جنگو چیست؟

Django Rest Framework (DRF) یک ماژول قدرتمند برای ساخت API های وب است. ساخت API های مبتنی بر مدل که دارای خط مشی های احراز هویت هستند و قابل مرور هستند بسیار آسان است.


140. چگونه با استفاده از جنگو داده ها را از apis واکشی کنیم؟

ما از Fetch API و  SessionAuthentication   با افزودن آن به  فایل settings.py  در سرور و روی کلاینت استفاده می کنیم و متد getCookie را  نیز شامل می  شود. در نهایت از روش fetch برای فراخوانی نقطه پایانی خود استفاده کنید.


141. چگونه داده ها را از apis به روز کنیم؟

ما داده ها را با ارسال درخواست های PUT  به روز می کنیم  . یک مسیر جدید در الگوهای url  مدل داده اضافه کنید  که از آنجا به روز رسانی به آن ارسال می شود. سپس یک متد به روز رسانی را به سریال ساز اضافه می کنیم که به روز رسانی را انجام می دهد.


142. احراز هویت چیست؟

احراز هویت فرآیند یا اقدامی است که برای تأیید هویت یک کاربر یا فرآیند انجام می شود.


143. انواع احراز هویت در REST API؟

احراز هویت مبتنی بر توکن و احراز هویت مبتنی بر جلسه.


144. سیستم احراز هویت مبتنی بر توکن چیست؟

سیستم احراز هویت مبتنی بر توکن، یک سیستم امنیتی است که کاربرانی را که سعی می‌کنند با استفاده از یک رمز امنیتی  ارائه شده توسط سرور، به سرور، شبکه یا سیستم امن دیگری وارد شوند ،  احراز هویت می‌کند.


145. آیا می توانم از django apis در توسعه اپلیکیشن موبایل استفاده کنم؟  

آره


146. Mixins را در جنگو توضیح دهید؟

میکسین نوع خاصی از وراثت چندگانه است. دو حالت اصلی وجود دارد که از میکسین ها استفاده می شود: ارائه بسیاری از ویژگی های اختیاری برای یک کلاس و استفاده از یک ویژگی خاص در بسیاری از کلاس های مختلف.


147. انواع مختلف استراتژی های کش در جنگو؟

انواع مختلف استراتژی‌های کش عبارتند از: کش سیستم فایل، کش در حافظه، استفاده از حافظه پنهان و حافظه پنهان پایگاه داده.


148. یک درخواست در جنگو چگونه پردازش می شود؟

هنگامی که کاربر درخواستی از برنامه شما می کند، یک کنترلر WSGI نمونه سازی می شود که:

  • واردات خود را  settings.py  فایل و کلاس استثنا جنگو می باشد.
  • تمام کلاس‌های میان‌افزاری را که در توپل‌های MIDDLEWARE_CLASSES یا MIDDLEWARES (بسته به نسخه جنگو) واقع در settings.py پیدا می‌کند بارگیری می‌کند.
  • چهار لیست از متدها را ایجاد می کند که پردازش درخواست، نمایش، پاسخ و استثنا را انجام می دهد.
  • از طریق متدهای درخواست حلقه می زند و آنها را به ترتیب اجرا می کند
  • URL درخواستی را حل می کند
  • از طریق هر یک از روش های پردازش view حلقه می زند
  • تابع view را فراخوانی می کند (معمولاً یک الگو را ارائه می دهد)
  • هر روش استثنایی را پردازش می کند
  • از طریق هر یک از روش های پاسخ، حلقه می زند (از داخل به بیرون، ترتیب معکوس از میان افزارهای درخواستی)
  • در نهایت یک مقدار بازگشتی ایجاد می کند و تابع callback را به وب سرور فراخوانی می کند

149. چه زمانی از تکرار کننده در ORM جنگو استفاده کنیم؟

تکرار کننده هنگام پردازش نتایجی که مقدار زیادی از حافظه در دسترس را اشغال می کنند (اشیاء کوچک زیاد یا اشیاء بزرگ کمتر) استفاده می شود.


150. سیگنال ها در جنگو چیست؟


سیگنال‌ها به فرستنده‌های خاصی اجازه می‌دهند تا به مجموعه‌ای از گیرنده‌ها اطلاع دهند که برخی اقدامات انجام شده است. آنها به ویژه زمانی مفید هستند که بسیاری از کدها ممکن است به رویدادهای مشابه علاقه مند شوند.


151. چگونه احراز هویت ورود به سیستم اجتماعی را در جنگو پیاده سازی کنیم؟

سرور توسعه را اجرا کنید تا مطمئن شوید همه چیز مرتب است. نصب python-social-auth با استفاده از دستور pip install. به روز رسانی  settings.py  شامل / ثبت نام کتابخانه در این پروژه به روز رسانی پایگاه داده از طریق مهاجرت.  الگوهای url پروژه را در urls.py به‌روزرسانی کنید  تا URLهای اصلی تأیید اعتبار را نیز شامل شود. یک برنامه جدید  https://apps.twitter.com/app/new  ایجاد کنید و مطمئن شوید که از آدرس اینترنتی پاسخ تماس  http://127.0.0.1:8000/complete/twitter استفاده می کنید . در فهرست پروژه، یک فایل config.py اضافه   کنید و کلید مصرف کننده و راز مصرف کننده را بگیرید و آنها را به فایل پیکربندی اضافه کنید. در نهایت url ها را به فایل پیکربندی اضافه کنید تا url های ورود و تغییر مسیر را مشخص کنید. بررسی سلامت عقل انجام دهید و دیدگاه های دوستانه را اضافه کنید.


152. کجا فایل های استاتیک را در جنگو ذخیره کنیم؟

فایل های استاتیک در پوشه ای به نام static  در اپلیکیشن جنگو ذخیره می شوند  .

محمدرضا حسنی

224 مطلب منتشر شده

دانش آموخته رشته فناوری اطلاعات / موسس پایتونی ها

درباره این مطلب نظر دهید !

محصولات فروش پایتونی ها

%60
تخفیف

آموزش فیگما (Figma)

30,000 تومان
3