U3F1ZWV6ZTE4Njk5NTM2MjU3MDQwX0ZyZWUxMTc5NzI4NDQzNTgwOQ==

إنشاء موقع ديناميكي بستخدام بايثون





 إذن ، كيف تبدأ في إنشاء مواقع الويب باستخدام Python؟ حسنًا ، يمكنك القيام بكل ذلك بنفسك ، وكتابة برنامج يعمل على خادم ويب ، ويقبل طلبات الصفحة ويقدم الردود في شكل HTML وموارد أخرى. ومع ذلك ، فإن هذا يتطلب الكثير من العمل ، فلماذا نواجه كل المشاكل عندما يكون هناك الكثير من الأدوات الموجودة للقيام بهذه المهمة نيابة عنك؟ تسمى هذه الأدوات إطارات العمل ، وهي ما سنستخدمه اليوم لإنشاء موقعنا على الويب.

يوجد عدد غير قليل من أطر عمل ويب Python ، ولكن إليك بعضًا من أفضلها:

  • جانغو - سنستخدم هذا اليوم. يحتوي على مجموعة ضخمة من الميزات ، لكنه يظل سهل الاستخدام. التوثيق ممتاز أيضًا ، لذلك إذا واجهتك مشكلة ، فسيكون لديك أسهل وقت لحل مشكلتك مع Django.
  • Grok - إطار عمل آخر به مجموعة ميزات قريبة من Django. إذا قررت أنك لا تفضل Django ، فهذا بديل جيد.
  • WebPy - إطار عمل خفيف الوزن بدرجة أكبر. ليس لديها العديد من الميزات ، على الرغم من أنها كانت تعمل على Reddit لفترة من الوقت!
  • TurboGears - على الرغم من شهرتها السابقة بضعف التوثيق ، إلا أن TurboGears قد تحسنت بشكل كبير في العام الماضي.

يمكن العثور على قائمة أكثر شمولاً على موقع Python على الويب إذا كنت بحاجة إلى خيارات إضافية. سنقوم اليوم بإعداد Django للتطوير على جهاز محلي ، ثم نبني مدونة بسيطة. سنقوم أيضًا بمراجعة عملية تثبيته على خادم ويب بعيد.

تثبيت Django

سنقوم بمعظم أعمالنا اليوم في المبنى. يجب أن يعمل كل هذا على نظامي التشغيل Mac و Linux ؛ ومع ذلك ، إذا كنت تقوم بتشغيل Windows ، فإن العملية مختلفة إلى حد ما. الإلمام بسطر الأوامر ليس ضروريًا إذا كنت تكتب بايثون فقط ، على الرغم من ذلك ، إذا كنت تخطط لاستخدام Django ، أو تشغيل موقع ويب ديناميكي بشكل عام ، فإن الأمر يستحق التعلم.

ضع في اعتبارك مراجعة هذه البرامج التعليمية لتستعد للعمل مع Terminal.

هذه هي الأوامر التي تحتاجها لتثبيت Django. إنه غير متوافق مع Python 3 ، لذلك ستحتاج إلى تثبيت الإصدار 2.7 أو إصدار أقدم لتشغيله.

1
2
3
4
wget http://www.djangoproject.com/download/1.3.1/tarball/
tar xzvf Django-1.3.1.tar.gz
cd Django-1.3.1
python setup.py install

بعد ذلك ، يمكننا إزالة ملفات التثبيت اختياريًا.

1
2
cd ..
rm Django-1.3.1.tar.gz

يجب أن تفعل ذلك! دعونا نختبرها.

1
2
3
python
from django import get_version
get_version()

يجب أن تشاهد "1.3.1". إذا قمت بذلك ، فقد نجح كل شيء وتم تثبيت Django على نظامك. تهانينا! نحن جاهزون لبدء إنشاء موقعنا!

سنقوم ببناء نظام مدونة اليوم ، لأنها طريقة ممتازة لتعلم الأساسيات. أولاً ، نحتاج إلى إنشاء مشروع Django.

1
2
3
4
cd ~/Documents/Projects
django-admin.py startproject FirstBlog
cd FirstBlog
ls

ماذا يفعل كل من هذه الملفات؟

  • __init__.pyيخبر Python أن هذا المجلد عبارة عن حزمة Python. تعلمنا عنها في الدرس الثالث. يسمح لبيثون باستيراد جميع البرامج النصية في المجلد كوحدات نمطية.
  • manage.pyليس في الواقع جزءًا من موقع الويب الخاص بك ؛ إنه برنامج نصي تقوم بتشغيله من سطر الأوامر. يحتوي على مجموعة من الوظائف لإدارة موقعك.
  • settings.pyيحتوي على إعدادات موقع الويب الخاص بك. لا يستخدم Django ملفات XML للتكوين ؛ كل شيء هو بايثون. هذا الملف هو ببساطة عدد من المتغيرات التي تحدد الإعداد لموقعك.
  • urls.pyهو الملف الذي يعين عناوين URL للصفحات. على سبيل المثال ، يمكنه تعيين yourwebsite.com/about إلى صفحة About Us .

يشير Django إلى نفسه إطار عمل MTV ، والذي يرمز إلى نموذج عرض النموذج.

ومع ذلك ، فإن أيًا من هذه الملفات لا يؤدي إلى إنشاء موقع ويب فعال. لذلك ، نحتاج إلى تطبيقات. التطبيقات هي المكان الذي تكتب فيه الكود الذي يجعل موقع الويب الخاص بك يعمل ، ولكن قبل أن نلقي نظرة عليها ، نحتاج إلى فهم القليل عن مبادئ تصميم Django.

أولاً ، Django هو إطار عمل MVC ، والذي يرمز إلى Model View Controller. يشير Django إلى نفسه إطار عمل MTV ، والذي يرمز إلى نموذج عرض النموذج. إنها طريقة مختلفة قليلاً عن MVC ، لكنها في الأساس متشابهة تمامًا. على أي حال ، MVC هو نمط معماري يوفر طريقة لهيكلة مشاريعك. يفصل الكود المستخدم لمعالجة البيانات عن الكود الذي يدير واجهة المستخدم.

يؤيد Django فلسفة DRY أو "لا تكرر نفسك".

ثانيًا ، يشترك Django في فلسفة DRY ، أو لا تكرر نفسك ، مما يعني أنه لا يجب عليك أبدًا كتابة كود يؤدي مهمة معينة أكثر من مرة. على سبيل المثال ، في مدونتنا ، إذا كتبنا ميزة انتقت مقالة عشوائية من الأرشيف ، وقمنا بتنفيذ هذه الميزة على صفحات متعددة ، فلن نرمز لها مرة أخرى في كل مرة نحتاج إليها. سنقوم بترميزه مرة واحدة ثم استخدامه في كل صفحة.

إذن كيف يرتبط هذا بالتطبيقات؟ حسنًا ، تسمح لك التطبيقات بكتابة موقع الويب الخاص بك بأسلوب جاف. يمكن أن يحتوي كل مشروع ، مثل المشروع الذي لدينا هنا ، على تطبيقات متعددة. على العكس من ذلك ، يمكن أن يكون كل تطبيق جزءًا من مشاريع متعددة. باستخدام المثال السابق ، هذا يعني أنه إذا أنشأنا موقعًا آخر في المستقبل يحتاج أيضًا إلى ميزة صفحة عشوائية ، فلن نضطر إلى كتابته مرة أخرى. يمكننا ببساطة استيراد التطبيق من هذا المشروع. لهذا السبب ، من المهم أن يخدم كل تطبيق غرضًا مميزًا واحدًا. إذا كتبت جميع وظائف موقعك داخل تطبيق واحد ، ثم احتجت إلى استخدام جزء منه مرة أخرى لاحقًا ، فيجب عليك استيرادها كلها. إذا كنت تقوم بإنشاء موقع ويب للتجارة الإلكترونية ، على سبيل المثال ، فلن ترغب في استيراد جميع ميزات المدونة. ومع ذلك ، إذا قمت بإنشاء تطبيق واحد للميزة العشوائية وتطبيق واحد لنظام نشر المدونة ،

هذا يعني أيضًا أن الكود منظم جيدًا داخل الموقع. إذا كنت ترغب في تغيير ميزة ، فلن تضطر إلى البحث في ملف ضخم واحد ؛ يمكنك بدلاً من ذلك تصفح التطبيق ذي الصلة وتغييره دون القلق بشأن التدخل في أي شيء آخر.

1
2
3
python mangage.py startapp blog
cd blog
ls

مرة أخرى ، لدينا __init__.pyملف لجعله حزمة ، وثلاثة ملفات أخرى: النماذج والاختبارات وطرق العرض. لا داعي للقلق بشأن الاختبارات في الوقت الحالي ، لكن الاختبارين الآخرين مهمان. نماذج وجهات النظر و Mو Vأجزاء من MVC.

في النماذج ، نحدد هياكل البيانات لدينا.

إذا كنت قد عملت مع PHP من قبل ، فربما تكون قد استخدمت PhpMyAdmin لإنشاء جداول MySQL ، ثم كتبت استعلامات SQL يدويًا في نصوص PHP النصية الخاصة بك. في Django ، الأمر أسهل بكثير. نحدد جميع هياكل البيانات التي نحتاجها في ملف النماذج هذا ، ثم نقوم بتشغيل أمر ويتم إنشاء جميع قواعد البيانات اللازمة لنا.

عندما ترغب في الوصول إلى تلك البيانات ، يمكنك الانتقال عبر هذه النماذج عن طريق استدعاء الطريقة عليها ، بدلاً من تشغيل الاستعلامات الأولية. هذا مفيد للغاية ، لأن Django يمكنه استخدام العديد من برامج قواعد البيانات. سنستخدم MySQL اليوم ، لأنه الأقوى ، وهو ما يوفره معظم المضيفين ، ولكن إذا احتجنا إلى التبديل إلى قاعدة بيانات مختلفة في المستقبل ، فستظل جميع التعليمات البرمجية صالحة! في لغات أخرى ، إذا أردت التبديل إلى SQLite أو شيء مشابه ، فستحتاج إلى إعادة كتابة الكود الذي يصل إلى قاعدة البيانات الخاصة بك.

في ملف المشاهدات ، نكتب الكود الذي يولد صفحات الويب بالفعل. هذا يربط جميع الأجزاء الأخرى معًا. عندما يكتب المستخدم عنوان URL ، يتم إرساله بواسطة urlsالبرنامج النصي الذي رأيناه سابقًا إلى viewsالبرنامج النصي ، والذي يحصل بعد ذلك على البيانات ذات الصلة من النماذج ، ويعالجها ويمررها إلى قالب ، والذي يتم أخيرًا تقديمه كصفحة يراها المستخدم . سنلقي نظرة على هذه القوالب قريبًا. إنها الجزء الأسهل - معظمها HTML.

بالنسبة للمدونة ، سنحتاج إلى جدول منشورات به عدة حقول للعنوان والنص الأساسي والمؤلف ووقت كتابته وما إلى ذلك. المدونة الحقيقية لديها تعليقات ، لكن هذا خارج نطاق العرض التوضيحي اليوم.

1
2
3
4
5
6
7
from django.db import models
 
class posts(models.Model):
    author = models.CharField(max_length = 30)
    title = models.CharField(max_length = 100)
    bodytext = models.TextField()
    timestamp = models.DateTimeField()

هذه النماذج هي مجرد وصف. نحن بحاجة إلى إنشاء قاعدة بيانات فعلية منهم. أولاً ، ومع ذلك ، نحتاج إلى تشغيل MySQL على نظامنا. على خادم ويب فعلي ، لن تكون هذه مشكلة ، لأنها عادةً ما تكون مثبتة مسبقًا. لحسن الحظ ، من السهل تثبيت البرنامج باستخدام مدير الحزم. أولاً ، تحتاج إلى تثبيت Homebrew و Easy Install

01
02
03
04
05
06
07
08
09
10
11
12
13
brew install mysql
easy_install mysql-python
 
mysqld_safe --skip-grant-tables #let anyone have full permissions
mysql -u root
UPDATE mysql.user SET Password=PASSWORD('nettuts') WHERE User='root'; #give the user 'root' a password
FLUSH PRIVILEGES;
 
mysql -u root -p #log in with our password 'nettuts'
CREATE DATABASE firstblog;
quit
 
python2.6 manage.py runserver

عند إعادة التشغيل ، لن يتم تشغيل MySQL ، لذلك في كل مرة تحتاج إلى القيام بذلك في المستقبل ، قم بتشغيل mysqldلبدء الخادم. يمكنك بعد ذلك التشغيل python2.6 manange.py runserverفي علامة تبويب جديدة لبدء خادم التطوير.

لن يقوم هذا الأمر بتشغيل الخادم بعد ، بل سيعيد خطأ فقط. هذا لأننا نحتاج إلى تكوين إعداداتنا. دعونا نلقي نظرة على settings.py.

تحتاج إلى تغيير إعدادات قاعدة البيانات أولاً. هذه تبدأ في السطر الثاني عشر.

01
02
03
04
05
06
07
08
09
10
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'firstblog',                      # Or path to database file if using sqlite3.
        'USER': 'root',                      # Not used with sqlite3.
        'PASSWORD': 'nettuts',                  # Not used with sqlite3.
        'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
        'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
    }
}

إذا حاولت تشغيل الخادم مرة أخرى ، فيجب أن يعمل ، بشرط أن تكون قد قمت بتثبيت MySQL بنجاح. إذا قمت بزيارة 127.0.0.1:8000متصفح الويب الخاص بك ، يجب أن تشاهد صفحة Django الافتراضية.

الآن دعنا نحول موقع Django إلى مدونة. أولاً ، نحتاج إلى استخدام النماذج الخاصة بنا لإنشاء جداول في قاعدة البيانات عن طريق تشغيل الأمر التالي:

1
python2.6 manage.py syncdb

في كل مرة تقوم فيها بتغيير النماذج الخاصة بك ، يجب عليك تشغيل هذا الأمر لتحديث قاعدة البيانات. لاحظ أن هذا لا يمكن أن يغير الحقول الموجودة ؛ قد تضيف فقط جديدة. لذلك إذا كنت ترغب في إزالة الحقول ، فسيتعين عليك القيام بذلك يدويًا باستخدام شيء مثل PhpMyAdmin. لأن هذه هي المرة الأولى التي نقوم فيها بتشغيل الأمر ، سيقوم Django بإعداد كل الجداول الافتراضية المضمنة لأشياء مثل نظام الإدارة. فقط اكتب "نعم" ثم املأ التفاصيل الخاصة بك.

لنقم الآن بإعداد urls.pyالملف. قم بإلغاء التعليق على السطر الأول في قسم الأمثلة ، وقم بتغييره ليقول url(r'^$', 'FirstBlog.blog.views.home', name='home') .

لنقم الآن بإنشاء ملف المشاهدات للرد على هذه الطلبات.

1
2
3
4
5
6
from django.shortcuts import render_to_response
 
from blog.models import posts
 
def home(request):
    return render_to_response('index.html')

هذا index.htmlالملف غير موجود حتى الآن ، فلنقم بعمله. قم بإنشاء مجلد يسمى القوالب في blogالتطبيق وحفظ ملف يسمى index.html، والذي يمكن أن يحتوي ببساطة على "Hello World" في الوقت الحالي. بعد ذلك ، نحتاج إلى تعديل ملف الإعدادات حتى يعرف Django مكان هذا القالب.

السطر 105 هو المكان الذي يبدأ فيه قسم التصريح عن مجلدات القوالب ؛ لذا اضبطه ، مثل:

1
2
3
4
5
6
TEMPLATE_DIRS = (
    "blog/templates",
    # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
    # Always use forward slashes, even on Windows.
    # Don't forget to use absolute paths, not relative paths.
)

إذا قمت بتشغيل الخادم مرة أخرى وقمت بتحديث الصفحة في متصفحك ، يجب أن ترى رسالة "Hello World". يمكننا الآن البدء في وضع مدونتنا. سنقوم بإضافة بعض HTML المعياري للصفحة الرئيسية.

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<!DOCTYPE html>
 
<html lang="en">
 
<head>
    <meta charset="utf-8" />
    <link rel="stylesheet" href="css/style.css">
    <link href="images/favicon.ico" rel="shortcut icon">
    <title>First Blog</title>
</head>
 
<body>
 
<div class="container">
    <h1>First Blog</h1>
    <h2>Title</h2>
    <h3>Posted on date by author</h3>
    <p>Body Text</p>
 
</div>
 
</body>
     
</html>

إذا قمت بحفظ الصفحة وتحديثها ، فيجب أن ترى أنه تم تحديث الصفحة بهذا المحتوى الجديد. الخطوة التالية هي إضافة محتوى ديناميكي من قاعدة البيانات. لتحقيق ذلك ، تمتلك Django لغة قوالب تسمح لك بتضمين المتغيرات بأقواس متعرجة. قم بتغيير القسم الأوسط من صفحتك لتبدو كما يلي:

1
2
3
4
5
6
7
<div class="container">
    <h1>First Blog</h1>
    <h2>{{ title }}</h2>
    <h3>Posted on {{ date }} by {{ author }}</h3>
    <p>{{ body }}</p>
 
</div>

يمكننا بعد ذلك تمرير القيم إلى هذه العناصر النائبة المتغيرة من views.pyالملف عن طريق إنشاء قاموس للقيم.

01
02
03
04
05
06
07
08
09
10
11
12
from django.shortcuts import render_to_response
 
from blog.models import posts
 
def home(request):
    content = {
        'title' : 'My First Post',
        'author' : 'Giles',
        'date' : '18th September 2011',
        'body' : 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam cursus tempus dui, ut vulputate nisl eleifend eget. Aenean justo felis, dapibus quis vulputate at, porta et dolor. Praesent enim libero, malesuada nec vestibulum vitae, fermentum nec ligula. Etiam eget convallis turpis. Donec non sem justo.',
    }
    return render_to_response('index.html', content)

حفظ وتحديث ، ويجب أن ترى أنك تقوم الآن بتمرير المحتوى إلى قالب من ملف المشاهدات الخاص بك. الخطوة الأخيرة هي الحصول على البيانات من قاعدة البيانات الخاصة بنا وتمريرها بدلاً من ذلك. لحسن الحظ ، يمكننا القيام بكل ذلك بدون استعلامات SQL ، باستخدام نماذج Django. نحتاج إلى إضافة تطبيقنا blogإلى مشروعنا FirstBlogعن طريق تغيير إعداد آخر. انتقل إلى INSTALLED_APPSالسطر 112 ، وأضف

1
'FirstBlog.blog',

إلى القائمة.

ثم غيّر views.pyبحيث تضيف بيانات من قاعدة البيانات.

1
2
3
4
5
6
7
from django.shortcuts import render_to_response
 
from blog.models import posts
 
def home(request):
    entries = posts.objects.all()[:10]
    return render_to_response('index.html', {'posts' : entries})

بعد ذلك ، قم بتحديث القالب للوصول إلى هذه البيانات.

01
02
03
04
05
06
07
08
09
10
11
12
<div class="container">
    <h1>First Blog</h1>
    <hr />
    {% for post in posts %}
        <div class="post">
        <h2>{{ post.title }}</h2>
        <h3>Posted on {{ post.timestamp }} by {{ post.author }}</h3>
        <p>{{ post.bodytext }}</p>
        </div>
        <hr />
    {% endfor %}
</div>

هنا ، يمكننا الوصول إلى جميع البيانات الموجودة في جدولنا في views.pyالملف ، ثم تحديد الإدخالات العشرة الأولى فقط. نقوم بتمرير هذه البيانات إلى القالب ، ونقوم بتكرار المدخلات ونعرض البيانات باستخدام HTML لموقعنا. لن يعمل هذا بعد ، لأنه لا يوجد شيء في قاعدة البيانات. أوقف الخادم وقم بتشغيل:

1
python2.6 manage.py syncdb

سيضيف هذا الجدول الجديد لمنشوراتنا إلى قاعدة البيانات. ثم افتح علامة تبويب جديدة واكتب:

1
mysql -u root -p

... اكتب كلمة المرور الخاصة بك ، واضغط على Enter ، ثم نفذ:

1
INSERT INTO blog_posts (author, title, bodytext) values ('Bob', 'Hello World', 'Lorem Ipsum');

ارجع إلى علامة التبويب السابقة وقم بتشغيل الخادم مرة أخرى. قم بتحديث الصفحة وسترى منشور مدونة يحتوي على المحتوى الوهمي الذي أضفته للتو. إذا قمت بتشغيل أمر MySQL عدة مرات ، فمن المفترض أن ترى المزيد من المنشورات تظهر على الصفحة عند التحديث.

آخر شيء يتعين علينا القيام به اليوم هو مراجعة نظام إدارة Django. هذه ميزة قوية حقًا في Django تتيح لك إدارة موقعك دون كتابة أي كود إضافي ، كما لو كنت تنشئ موقعًا من البداية. لتمكينه ، نحتاج إلى تغيير بعض الإعدادات. أولاً ، قم بإلغاء التعليق على الأسطر 4 و 5 و 13 و 16 urls.py، بحيث يمكنك الوصول إلى صفحة المسؤول بالفعل. بعد ذلك ، انتقل إلى INSTALLED_APPSقسم settings.pyو uncomment 'django.contrib.admin',و 'django.contrib.admindocs',للسماح للمسؤول بالتحكم في postsجدولك ، قم بإنشاء ملف جديد يسمى admin.pyفي blogالمجلد ، وأضف الأسطر التالية:

1
2
3
4
from django.contrib import admin
from blog.models import posts
 
admin.site.register(posts)

قم بالتشغيل python2.6 manage.py syncdbمرة أخرى لإضافة الجداول الخاصة بقسم المسؤول ، وأعد تشغيل الخادم.

إذا قمت بزيارة 127.0.0.1:8000/admin الآن في متصفحك ، يجب أن ترى صفحة تسجيل الدخول. استخدم التفاصيل التي اخترتها سابقًا عند تشغيل syncdbالأمر لأول مرة لتسجيل الدخول. يجب أن ترى قسمًا يسمى المدونة بعنوان فرعي postsللجدول. يمكنك استخدام هذا لإنشاء منشورات المدونة وتحريرها وإزالتها بواجهة بسيطة.

هذا كل ما عليك فعله. لقد قمت للتو بإنشاء مدونة تعمل بكامل طاقتها ، وإن كانت بسيطة. لإنهاء هذا الدرس ، سننظر في تثبيت Django على خادم ويب.

هناك نوعان من استضافة الويب ، أيهما سيؤثر على ما إذا كان يمكنك استخدام Django. إذا كان لديك استضافة مشتركة ، فأنت تحت رحمة مضيفك بالكامل.

لا يدعم العديد من مضيفي الويب الرخيصين لغة Python. بينما يكاد يكون PHP مضمونًا ، فإن دعم اللغات الأخرى غالبًا ليس كذلك. سيتعين عليك التحقق من لوحة التحكم لتحديد ما إذا كانت Python (و Django) متاحة. من الواضح أن العملية تختلف قليلاً مع كل مضيف. تعمل جميع الاستضافة تقريبًا على Apache ، ويمكننا استخدامها لاستضافة Django ، باستخدام وحدات mod_wsgiأو mod_pythonوحدات Apache.

يقوم معظم مضيفي الويب بتشغيل البرامج النصية بعدة لغات باستخدام CGI. يمكن تشغيل Django على FastCGI وأيضًا نظريًا على CGI ، لكن هذا غير مدعوم رسميًا وسيكون بطيئًا جدًا بالنسبة لموقع إنتاج فعلي. ستحتاج إلى التحقق مما إذا كانت مثبتة. يتم العثور عليها عادةً تحت عنوان ، مثل "CGI و Scripting Language Support".

إذا كان لديك استضافة VPS ، أو كنت محظوظًا بما يكفي لامتلاك خادم مخصص ، فستكون حياتك أسهل بكثير. عادةً ما تأتي هذه مع Python مثبتة مسبقًا ، ومن هناك ، ما عليك سوى اتباع نفس الخطوات التي اتبعناها للحصول على نسخة محلية من Django قيد التشغيل. إذا لم يكن لديك Python ، فيمكنك تثبيته مع مدير الحزم. قد يأتي نظامك مع Django.

1
2
3
4
5
6
ssh root@example.com
 
wget http://www.djangoproject.com/download/1.3.1/tarball/
tar xzvf Django-1.3.1.tar.gz
cd Django-1.3.1
python setup.py install

بمجرد تثبيت Django على الخادم الخاص بك ، قم بتحميل الموقع الذي أنشأته للتو باستخدام أي عميل لنقل الملفات. يمكنك وضع الملفات في أي مكان ، ولكن احتفظ بها خارج publicالمجلد ، أو سيتمكن أي شخص من رؤية الكود المصدري لموقعك. أنا استخدم /homeلجميع مشاريعي.

بعد ذلك ، قم بإنشاء قاعدة بيانات MySQL ، تسمى "firstblog" على الخادم الخاص بك وتشغيلها syncdbمرة أخرى. سيتعين عليك إنشاء حسابك الخاص بلوحة تحكم المسؤول مرة أخرى ، ولكن هذا شيء لمرة واحدة.

إذا حاولت تشغيل هذا ، فقد تتلقى خطأ ، وذلك لأن إعدادات الخادم مختلفة عن تلك الموجودة على جهاز الكمبيوتر المحلي الخاص بك. قد تحتاج إلى تغيير كلمة مرور قاعدة البيانات في الداخل settings.py، ولكن اعتمادًا على تكوين الخادم الخاص بك ، قد تواجه أيضًا مشكلات أخرى. جوجل صديقك في هذه المواقف!

لتشغيل الخادم هذه المرة ، يختلف الأمر قليلاً. يجب عليك تحديد عنوان IP والمنفذ حتى تتمكن من الوصول إلى الموقع عبر الإنترنت.

1
python manage.py runserver 0.0.0.0:8000

إذا قمت بزيارة موقعك في مستعرض ويب ، على المنفذ 8000 ، يجب أن ترى موقعك!

هذا كل شيء في هذا الدرس ... وسلسلتنا. أتمنى أن تكون قد تعلمت عددًا من المهارات المفيدة خلال هذه الدروس الخمسة الماضية ، وأن تكون مستعدًا للمضي قدمًا وتعلم المزيد من بايثون في المستقبل. إذا أعجبك مظهر Django ، وترغب في الاستمرار في زيادة معرفتك بإطار العمل ، فإليك بعض الدروس الإضافية حول هذا الموضوع.

كما هو الحال دائمًا ، يسعدني مناقشة أي أسئلة حول هذا البرنامج التعليمي أو Python بشكل عام في التعليقات. شكرا للقراءة.


***********************


***********************

تعليقات
ليست هناك تعليقات
إرسال تعليق

إرسال تعليق

الاسمبريد إلكترونيرسالة