تنظیمات پروژه

سلام فارغ از اینکه ریپازیتوری شما به صورتی عمومی یا خصوصی باشد هرگز نباید اطلاعات حساس خود را روی مخزن راه دور ارسال کنید. این اطلاعات شامل کلیدهای خصوصی، کلیدهای رمزنگاری، پسوردها، کلیدهای API و … می شود. در این مرحله می خواهیم دو مدل پیکربندی را در ماژول settings.py انجام دهیم. اطلاعات حساس نظیر […]

ورژن کنترل | Version Control

سلام به آخرین فصل خوش آمدید. در این فصل می خواهیم برنامۀ خود را روی سرور منتشر کنی. همچنین قصد داریم یک سرور ایمیل و گواهینامۀ https را برای سرورمان پیکربندی کنیم. این پروژه قبلا در آدرس djangoboards.com آنلاین شده و می توانید به آن مراجعه کنید. کنترل ورژن در مهندسی نرم افزار یک مفهوم […]

آخرین تنظیمات

سلام شاید از قبل متوجه این موضوع شده باشید که وقتی فردی پاسخی را برای یک پست ارسال می کند فیلد last_update بروز رسانی نمی شود. حالا می خواهیم این مورد را درست کنیم. boards/views.py @login_required def reply_topic(request, pk, topic_pk): topic = get_object_or_404(Topic, board__pk=pk, pk=topic_pk) if request.method == ‘POST’: form = PostForm(request.POST) if form.is_valid(): post […]

تصویر پروفایل یا آواتار

سلام یکی از ساده ترین راه ها برای اضافه کردن تصویر پروفایل استفاده از Gravatar است. داخل فولدر boards/templatetags فایلی با نام gravatar.py ایجاد می کنیم. boards/templatetags/gravatar.py import hashlib from urllib.parse import urlencode from django import template from django.conf import settings register = template.Library() @register.filter def gravatar(user): email = user.email.lower().encode(‘utf-8’) default = ‘mm’ size = […]

انسانی کردن برنامه | Humanize

سلام برای اینکه برنامه همه‌فهم‌تر شود؛ پکیج هایی به صورت پیشفرض در جنگو ساخته شده است. برای مثال می خواهیم فیلد زمان و تاریخ را طبیعی‌تر کنیم. به جای اینکه تمام دیتای خود را نمایش دهیم؛ می نویسیم «دو دقیقه پیش» در اولین گام django.contrib.humanize را به INSTALLED_APPS اضافه می کنیم. myproject/settings.py INSTALLED_APPS = [ […]

ویرایشگر Markdown

سلام می خواهیم از یک ویرایشگر Markdown خیلی باحال به اسم SimpleMD استفاده کنیم. در ابتدا یا کتابخانۀ جاوا اسکریپت آن را دانلود یا از CDNشان استفاده می کنیم. <link rel=”stylesheet” href=”https://cdn.jsdelivr.net/simplemde/latest/simplemde.min.css”> <script src=”https://cdn.jsdelivr.net/simplemde/latest/simplemde.min.js”></script> هم می توان دو خط بالا را به فایل base.html اضافه کرد و هم این دو فایل را دانلود کرده و […]