طراحی سایت به 2 روش کلی انجام می شود: استفاده از CMS هایی مانند وردپرس ، جوملا و... یا طراحی سایت به صورت کدنویسی که اگر شما هم قصد یادگیری طراحی سایت به صورت کدنویسی دارید در ادامه این مقاله با من همراه باشید.
برای کدنویسی سایت هم زبان های برنامه نویسی متعددی وجود دارد؛ که می توانید از آنها برای طراحی سایت استفاده کنید، زبان های برنامه نویسی چون PHP / Python و.... استفاده کنید که در این میان زبان برنامه نویسی پایتون بسیار کارآمد و قدرتمند می باشد
برای آنکه بتوانید با پایتون و یا هر زبان دیگری طراحی سایت کنید؛ باید با فریم ورک ها کار کنید، اگر با مفهوم framework ها آشنایی ندارید، می توانید به مقاله فریم ورک چیست؟ مراجعه کنید؛
فریم ورک Django یک فریم ورک ارائه شده برای زبان پایتون است؛ که می توانید با آن به راحتی یک سایت کدنویسی را طراحی کنید و با دیزاین اختصاصی خودتان و عملکرد و کارایی مدنظرتان سایت را طراحی کنید.
بهترین کار برای یادگیری فریم ورک جنگو تمرین مکرر است و اگر علاقه دارید تا هرچه سریع تر زبان پایتون و فریم ورک جنگو را یادبگیرید بهتر است همین حالا این فریم ورک را نصب کنید و اولین دستورات خود را وارد کنید.
آموزش نصب جنگو
جهت نصب فریم ورک جنگو، ابتدا باید مطمئن شوید که پایتون را به خوبی نصب کرده اید یا نه؟! که برای متوجه شدن آن می توانید در CMD کامپیوتر عبارت پایتون را وارد کنید ؛ اگر به شما ورژن را نمایش داد، یعنی پایتون به خوبی نصب شده
حال نوبت به نصب جنگو می رسد، که تنها کافیست دستور pip install django را وارد کنید تا به صورت اتوماتیک فریم ورک جنگو دانلود و نصب شود
حال که تا به این مرحله رسیدین نوبت به آموزش کامل و جامع تمام اجزای جنگو می رسد و شروع طراحی سایت با جنگو را آغاز کنیم؛ در ابتدا باید یک پروژه جدید با جنگو ایجاد کنیم؛ که می توانید به راحتی با وارد کردن یک خط کد، دستور ایجاد پروژه را به جنگو بدهید.
برای تعریف پروژه جدید در جنگو تنها کافیست تا از دستور django-admin startproject my_project استفاده کنید تا به صورت خودکار در آدرسی که از قبل تعیین کرده اید پروژه تان ایجاد شود.
پس ابتدا یک نام برای پروژه انتخاب کنید مثل: my_project سپس هنگامی که یک نام مناسب برای پروژه جنگو خود پیدا کردید، به جایی از سیستم فایلی که می خواهید کد را ذخیره کنید (در محیط مجازی) بروید، من به پوشه myworld رفته و این را اجرا می کنم. دستور در خط فرمان:
django-admin startproject my_project
جنگو یک پوشه با نام my_project در رایانه من با این محتوا ایجاد می کند:
manager.py
my_project
__init__.py
asgi.py
settings.py
urls.py
wsgi.py
این ها همه فایل ها و پوشه هایی با معنای خاص هستند، در ادامه این آموزش با برخی از آنها آشنا خواهید شد، اما در حال حاضر، مهم تر است که بدانید این محل پروژه شما است و می توانید شروع به ساخت برنامه های کاربردی در آن کنید.
پروژه جنگو را اجرا کنید؛ اکنون که یک پروژه جنگو دارید، می توانید آن را اجرا کنید و ببینید که در مرورگر چگونه به نظر می رسد.به پوشه my_project بروید و این دستور را در خط فرمان اجرا کنید:
py manage.py runserver
که این نتیجه را ایجاد خواهد کرد:
سپس در داخل مرورگر وارد IP داده شده شوید تا بتوانید خروجی پروژه را در مرورگر ببینید:
طراحی سایت با پایتون و فریم ورک جنگو کار آسانی است، تنها نیاز به تمرین و مطالعه دارد تا بتوانید به طور کامل و جامع کدنویسی سایت را یادبگیرید، اگر هم قصد دارید از صفر تا صد به صورت حرفه ای آموزش ببیند می توانید در سایت های موجود اقدام به یادگیری کنید؛ که می توانید بر روی آموزش جامع جنگو کلیک کنید؛ تا صفر تا صد را آموزش ببینید.
در ادامه این مقاله با ما همراه باشید تا آموزش کامل کدنویسی با جنگو را ارائه دهیم، در ادامه به آموزش هریک از اجزای داخلی فریم ورک جنگو می پردازیم، و به طور کامل چگونکی کدنویسی در این فریم ورک به شما آموزش میدهیم؛ با ما همراه باشید.
بعد از آنکه فریم ورک جنگو را بدرستی نصب می کنید و یک پروژه جدید می سازید؛ نوبت به ساخت App در پروژه می رسد، که در ادامه آموزش ساخت اپ را می دهیم، اما قبل از آن قصد داریم این مفهوم را شرح دهیم؛
اپ یک برنامه وب است که در پروژه شما معنای خاصی دارد، مانند صفحه اصلی، فرم تماس یا پایگاه داده اعضا؛ در اصل زمانی که با جنگو طراحی سایت می کنید، هر بخش وب شما که یک عملکرد متفاوت دارد؛ یک app مجزا است و شما باید به صورت جداگانه درون پروژه تان این بخش ها را کدنویسی کنید.
در ادامه این آموزش ما یک برنامه ایجاد می کنیم که فقط یک برنامه جنگو ساده می باشد و پیغام "Hello World!" را نمایش می دهد.
ابتدا به مکان انتخابی که میخواهید برنامه را در آن ایجاد کنید، که برای من پوشه my_project می باشد؛ می روید و دستور زیر را اجرا کنید.
البته اگر سرور همچنان در حال اجرا است و نمیتوانید دستورات را بنویسید، برای متوقف کردن آن در ویندوز از دستور [CTRL] + [C] و در مک از دستور [command] + [C] استفاده کنید، تا سرور متوقف شود و باید دوباره به محیط مجازی بازگردید.
حال نوبت به ساخت یک app می رسد که با دستور زیر را وارد می کنیم:
py manager.py startapp User
جنگو در پروژه من پوشه ای به نام Userبا این محتوا ایجاد می کند:
my_project
manager.py
my_project
User
__init__.py
__init__.py
admin.py
apps.py
models.py
tests.py
views.py
این ها همه فایل ها و پوشه هایی با معنای خاص هستند. که در ادامه این آموزش با بیشتر آنها آشنا خواهید شد؛ حال شما می توانید 3 عنصر اصلی جنگو را مشاهده کنید که عبارت اند از: View / Urls / Templates که هرکدام را توضیح می دهیم
نماهای جنگو توابع پایتون هستند که درخواستهای http را دریافت میکنند و پاسخ http را مانند اسناد HTML برمیگردانند.یک صفحه وب که از جنگو استفاده می کند پر از View با وظایف و ماموریت های مختلف است.
نماها معمولاً در فایلی به نام views.py قرار می گیرند که در پوشه برنامه شما قرار دارد.یک views.py در پوشه اعضای شما وجود دارد که به شکل زیر است:
my_project/User/views.py:
جهت کسب اطلاعات بیشتر و آموزش کامل جامع View ها در جنگو می توانید کلیک کنید.
یک فایل به نام urls.py در همان پوشه فایل views.py ایجاد کنید و این کد را در آن تایپ کنید:
my_tennis_club/members/urls.py:
فایل urls.py که ایجاد کردید مخصوص برنامه اعضا است. ما باید در دایرکتوری ریشه my_tennis_club نیز مقداری مسیریابی انجام دهیم. این ممکن است پیچیده به نظر برسد، اما در حال حاضر، فقط دستورالعمل های زیر را دنبال کنید.
فایلی به نام urls.py در پوشه my_tennis_club وجود دارد، آن فایل را باز کنید و ماژول include را در دستور import اضافه کنید، و همچنین یک تابع path() را در لیست urlpatterns[] اضافه کنید، با آرگومان هایی که کاربرانی را که وارد می شوند هدایت می کند. از طریق 127.0.0.1: 8000/.
سپس فایل شما به شکل زیر در می آید:
my_tennis_club/my_tennis_club/urls.py:
اگر سرور در حال اجرا نیست، به پوشه /my_tennis_club بروید و این دستور را در خط فرمان اجرا کنید:
سرور py manager.py
در پنجره مرورگر، 127.0.0.1:8000/members/ را در نوار آدرس تایپ کنید؛ جهت آموزش جامع Urls ها در جنگو کلیک کنید.
یک پوشه templates در داخل پوشه اعضا ایجاد کنید و یک فایل HTML به نام myfirst.html ایجاد کنید.
ساختار فایل باید به صورت زیر باشد:
باشگاه_تنیس_من
manager.py
باشگاه_تنیس_من/
اعضا/
قالب ها/
myfirst.html
فایل HTML را باز کنید و موارد زیر را وارد کنید:
my_tennis_club/members/templates/myfirst.html:
<!DOCTYPE html>
<html>
<بدن>
<h1>سلام جهان!</h1>
<p>به اولین پروژه جنگو من خوش آمدید!</p>
</body>
</html>
نما را اصلاح کنید
فایل views.py را باز کنید و نمای اعضا را با این جایگزین کنید:
my_tennis_club/members/views.py:
از django.http واردات HttpResponse
از django.template واردات لودر
اعضای def (درخواست):
template = loader.get_template ('myfirst.html')
بازگشت HttpResponse(template.render())
تغییر تنظیمات
برای اینکه بتوانیم با چیزهای پیچیده تر از "Hello World!" کار کنیم، باید به جنگو بگوییم که یک برنامه جدید ساخته شده است.
این کار در فایل settings.py در پوشه my_tennis_club انجام می شود.
لیست INSTALLED_APPS[] را جستجو کنید و برنامه اعضا را مانند این اضافه کنید:
my_tennis_club/my_tennis_club/settings.py:
INSTALLED_APPS = [
'django.contrib.admin'،
'django.contrib.auth'،
'django.contrib.contenttypes'،
'django.contrib.sessions'،
'django.contrib.messages'،
'django.contrib.staticfiles'،
'اعضا'
]
سپس این دستور را اجرا کنید:
py manager.py مهاجرت کنید
که این خروجی را تولید می کند:
عملیات برای انجام:
همه مهاجرت ها را اعمال کنید: مدیر، تأیید اعتبار، نوع محتوا، جلسات
مهاجرت های در حال اجرا:
اعمال انواع محتوا.0001_initial... بسیار خوب
در حال اعمال auth.0001_initial... بسیار خوب
اعمال admin.0001_initial... بسیار خوب
در حال اعمال admin.0002_logentry_remove_auto_add... بسیار خوب
در حال اعمال admin.0003_logentry_add_action_flag_choices... بسیار خوب
اعمال انواع محتوا.0002_remove_content_type_name... بسیار خوب
در حال اعمال auth.0002_alter_permission_name_max_length... بسیار خوب
در حال اعمال auth.0003_alter_user_email_max_length... بسیار خوب
در حال اعمال auth.0004_alter_user_username_opts... بسیار خوب
در حال اعمال auth.0005_alter_user_last_login_null... بسیار خوب
در حال اعمال auth.0006_require_contenttypes_0002... بسیار خوب
در حال اعمال auth.0007_alter_validators_add_error_messages... بسیار خوب
در حال اعمال auth.0008_alter_user_username_max_length... بسیار خوب
در حال اعمال auth.0009_alter_user_last_name_max_length... بسیار خوب
در حال اعمال auth.0010_alter_group_name_max_length... بسیار خوب
در حال اعمال auth.0011_update_proxy_permissions... بسیار خوب
در حال اعمال auth.0012_alter_user_first_name_max_length... بسیار خوب
اعمال جلسات.0001_initial... بسیار خوب
(myworld) C:\Users\Your Name\myworld\my_tennis_club>
سرور را با رفتن به پوشه /my_tennis_club راه اندازی کنید و این دستور را اجرا کنید:
سرور py manager.py
در پنجره مرورگر، 127.0.0.1:8000/members/ را در نوار آدرس تایپ کنید؛ جهت کسب اطلاعات بیشتر درباره Templats ها می توانید در آموزش کامل Templats در جنگو کلیک کنید.
تا به این لحظه آموزش های کاربردی درباره فریم ورک جنگو آموختیم و اجزای اصلی این فریم ورک قدرتمند را برایتان شرح دادیم ، در ادامه موارد بیشتری از طراحی سایت با جنگو را توضیح می دهیم، همچنین شما می توانید در دوره آموزش طراحی سایت با Django شرکت کنید.
مدل های جنگو یک جدول در پایگاه داده شما است؛ تا کنون در این آموزش، خروجی داده های ثابت از قالب های پایتون یا HTML بوده است، اکنون خواهیم دید که چگونه جنگو به ما اجازه می دهد تا بدون نیاز به تغییر یا آپلود فایل ها با داده ها کار کنیم.
درجنگو، داده ها در اشیاء به نام Models ایجاد می شوند و در واقع جداول در یک پایگاه داده هستند.
برای ایجاد یک مدل، به فایل models.py در پوشه /members/ بروید؛ آن را باز کنید و با ایجاد یک کلاس Member یک جدول Member اضافه کنید و فیلدهای جدول را در آن توصیف کنید:
from django.db import models
class Member(models.Model):
firstname = models.CharField(max_length=255)
lastname = models.CharField(max_length=255)
اولین فیلد، نام، یک فیلد متنی است و شامل نام کوچک اعضا خواهد بود.
فیلد دوم، نام خانوادگی، نیز یک فیلد متنی است که نام خانوادگی عضو را در خود دارد.
نام و نام خانوادگی هر دو تنظیم شده است تا حداکثر 255 کاراکتر داشته باشد.
هنگامی که پروژه جنگو را ایجاد کردیم، یک پایگاه داده SQLite خالی دریافت کردیم.
این در پوشه ریشه my_tennis_club ایجاد شده است و نام فایل db.sqlite3 را دارد.
به طور پیش فرض، تمام مدل های ایجاد شده در پروژه جنگو به صورت جداول در این پایگاه داده ایجاد می شوند.
حالا وقتی یک Model را در فایل models.py توضیح دادیم، باید دستوری را برای ایجاد جدول در پایگاه داده اجرا کنیم؛ به پوشه /my_tennis_club/ بروید و این دستور را اجرا کنید:
py manage.py makemigrations members
توجه داشته باشید که جنگو یک فیلد شناسه برای جداول شما درج می کند که یک عدد افزایش خودکار است (رکورد اول مقدار 1 را می گیرد، رکورد دوم 2 و غیره)، این رفتار پیش فرض جنگو است، می توانید با توصیف شناسه خود آن را لغو کنید. رشته.
جدول هنوز ایجاد نشده است، شما باید یک دستور دیگر را اجرا کنید، سپس جنگو یک دستور SQL را بر اساس محتوای فایل جدید در پوشه /migrations/ ایجاد و اجرا می کند.
دستور migrate را اجرا کنید:
py manage.py migrate
به عنوان یک نکته جانبی: می توانید دستور SQL را که از مهاجرت بالا اجرا شده است مشاهده کنید. تنها کاری که باید انجام دهید این است که این دستور را با شماره مهاجرت اجرا کنید:
py manage.py sqlmigrate members 0001
اگر به کدنویسی با زبان پایتون علاقه داری و دوست داری که به صورت کامل و حرفه ای آموزش ببینی می تونی در دوره جامع برنامه نویسی سایت با جنگو شرکت کنید و در پایان دوره سایت دلخواه خود را طراحی کنید.