Heim  >  Artikel  >  Backend-Entwicklung  >  Erste Schritte mit Django Framework 1.0

Erste Schritte mit Django Framework 1.0

做棵大树
做棵大树Original
2020-05-26 18:45:142045Durchsuche

Entwicklungstools: PyCharm Community Edition oder Professional Edition + CMD-Befehlszeile

Der Unterschied zwischen der Community Edition und der Professional Edition besteht darin, dass die Professional Edition dies kann Führen Sie Django-Projekte direkt aus Erstellen Sie, während die Community Edition manuell erstellt werden muss. Da wir alle gerade erst anfangen, ist es für uns besser, es manuell zu erstellen, was uns hilft, uns mit Django-Befehlen und zugehörigen Vorgängen vertraut zu machen.

Erstellen Sie ein minimales Django-Programm

Erstellen Sie ein neues Web-Framework-Projekt

Wir gehen über die Befehlszeilenschnittstelle zu dem Verzeichnis, in dem wir das Projekt erstellen möchten, und geben dann den folgenden Befehl ein:

django-admin startproject mysite

Hier django-admin ist ein Tool zum Verwalten von Django. Wenn wir Django installieren, werden standardmäßig Abhängigkeiten installiert. mysite ist der Projektname und kann nach Ihren eigenen Bedürfnissen geändert werden. Nach der Erstellung erhalten wir die folgende Verzeichnisstruktur:

Erste Schritte mit Django Framework 1.0
Minimale Projektverzeichnisstruktur

Ändern Sie das Projekt und fügen Sie es hinzu Funktion

Hier müssen wir spezifische Anwendungen hinzufügen und verwandte Funktionen hinzufügen, indem wir Routenzuordnung konfigurieren.

Welche Beziehung besteht zwischen Projekt und App?

  • Das Projekt entspricht einer Website und ist eine Sammlung von Konfigurationen und Anwendungen
    Träger von Funktionen
  • Trennung von Konfiguration und Funktion sind Ausdruck hoher Modularität
  • 【Projekt ändern】Erstellen Sie eine bestimmte Anwendung (App)
    Befehl:
  1. Nachdem der Befehl ausgeführt wurde, wird ein neues Verzeichnis

python manage.py startapp helloapphelloapp-Verzeichnis

erstellt

helloapp

Erste Schritte mit Django Framework 1.0[Modification Project] Ändern Sie die
<code class="hljs"><span class="hljs-comment"># Create your views here.</span><br/><span class="hljs-keyword">from</span> django.http <span class="hljs-keyword">import</span> HttpResponse<br/><br/><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">hello</span><span class="hljs-params">(request)</span>:</span><br/><span class="hljs-keyword">return</span> HttpResponse(<span class="hljs-string">"Hello World! I am coming..."</span>)<br/></code>
  1. [Modify project] Ändern Sie die URL Routing views.py

    Geben Sie den Pfad zwischen der URL und der Verarbeitungsfunktion in der Datei
    im Verzeichnis an, das der Projektnamensbeziehung entspricht.
  2. <code class="hljs"><span class="hljs-keyword">from</span> django.contrib <span class="hljs-keyword">import</span> admin<br/><span class="hljs-keyword">from</span> django.urls <span class="hljs-keyword">import</span> include, path<br/><span class="hljs-keyword">from</span> helloapp <span class="hljs-keyword">import</span> views      <span class="hljs-comment"># from the subapp import related views</span><br/><br/>urlpatterns = [                 <span class="hljs-comment"># config the routes like vue&#39;s vue-router</span><br/>    path(<span class="hljs-string">&#39;admin/&#39;</span>, admin.site.urls),<br/>    path(<span class="hljs-string">&#39;index/&#39;</span>, views.hello),<br/>]<br/></code>
  3. Wir müssen zuerst die Ansichtsdatei unter der entsprechenden App einführen und dann die Routing-Korrespondenz konfigurieren

    urls.py

    [Änderungsprojekt] URL ändern Routing

  4. Der erste Parameter hier stellt die URL-Adresse dar, und was wir hier haben, wird auf den Zugriff von
    auf diesen Pfad reagieren; der zweite Parameter stellt die Angabe einer bestimmten Verarbeitung dar Funktion, zum Beispiel Hier haben wir

    formuliert.

    path('index/', views.hello)

    Besuchen Sie die Seite

    域名/index/views.hello

    Erste Schritte mit Django Framework 1.0
    Führen Sie das Projekt aus

Wenn wir nach dem Ausführen auf die entsprechende Route zugreifen, erhalten wir die entsprechenden Rückgabeinformationen. Wenn wir auf eine nicht konfigurierte Route zugreifen, wird 404 notfound zurückgegeben.

python manage.py runserverWas ich zu sagen habe

und

django-adminmanage.py django-admin

django-admin ist ein globales Verwaltungstool für das Django-Framework:

Erstellen und verwalten Sie Django-Projektedjango-admin <command> [options]</command>

Erstellen und verwalten Sie die von Django-Projekten verwendete Datenbank
  • Steuern Sie das Debuggen oder Protokollinformationen
  • Django-Projekt ausführen und warten
  • Wir können auch den Befehl
  • verwenden, um weitere Funktionen anzuzeigen
manage.py

django-admin help

hat ähnliche Funktionen wie , der Umfang gilt jedoch nur für das aktuelle Projekt.

Wir können auch weitere Funktionen über den Befehl

anzeigen. python manage.py <command> [options]</command>

django-admin

Verbesserung des Minimalprogramms

python manage.py help

Anforderung: Rückgabe einer HTML-Seite anstelle eines Strings Idee: Erstellen Sie eine Vorlage (T), antworten Sie auf bestimmte Anfragen und kehren Sie zur Vorlagenseite zurückErstellen Sie eine neue hello2app und greifen Sie über index2 darauf zu

Erstellen Sie eine neue hello2app-Anwendung

`python manage.py startapp hello2app`

使用templateTest.html为返回页面,修改views.py

```python
# hello2app/views.py
from django.shortcuts import render
def hello(request):
    return render(request, "PYC01-HTMLJSDemo.html")
```

这里,`render()` 是一个打包函数,第一个参数是 request, 第二个参数是要返回的模板页面。
  • 在hello2app应用中,新增urls.py文件(本地路由文件)

    <code class="hljs"><span class="hljs-comment"># hello2app/urls.py</span><br/><br/><span class="hljs-keyword">from</span> django.urls <span class="hljs-keyword">import</span> path<br/><span class="hljs-keyword">from</span> . <span class="hljs-keyword">import</span> views         <span class="hljs-comment"># . 代表当前 app</span><br/>urlpatterns = [             <span class="hljs-comment"># urlpatterns 变量名成是固定的</span><br/>    path(<span class="hljs-string">&#39;&#39;</span>, views.hello)<br/>]<br/></code>
  • 在全局路由文件中增加对本应用路由文件的引用

    <code class="hljs"><span class="hljs-comment"># mysite/urls.py</span><br/><br/><span class="hljs-keyword">from</span> django.contrib <span class="hljs-keyword">import</span> admin<br/><span class="hljs-keyword">from</span> django.urls <span class="hljs-keyword">import</span> include, path<br/><span class="hljs-comment"># include()函数,用于引入其他路由文件</span><br/><span class="hljs-keyword">from</span> helloapp <span class="hljs-keyword">import</span> views<br/>urlpatterns = [<br/>    path(<span class="hljs-string">&#39;index2/&#39;</span>, include(<span class="hljs-string">&#39;hello2app.urls&#39;</span>)),<br/>    <span class="hljs-comment"># 将hello2app的局部路由增加到全局路由中</span><br/>    path(<span class="hljs-string">&#39;index/&#39;</span>, views.hello),<br/>    path(<span class="hljs-string">&#39;admin/&#39;</span>, admin.site.urls),<br/>]<br/></code>
  • 设置模板路径,让Django框架找到模板所在目录

    我们由于返回了模板文件,所以我们需要对 mysite/settings.py 进行修改配置一下路径,至此,也就完成了一个最小的Django项目了!

    <code class="hljs">TEMPLATES = [<br/>{<br/>    <span class="hljs-string">&#39;BACKEND&#39;</span>: <span class="hljs-string">&#39;django.template.backends.django.DjangoTemplates&#39;</span>,<br/>    <span class="hljs-string">&#39;DIRS&#39;</span>: [os.path.join(BASE_DIR, <span class="hljs-string">&#39;hello2app/templates&#39;</span>)],    <span class="hljs-comment"># 指定templates所在路径</span><br/>    <span class="hljs-string">&#39;APP_DIRS&#39;</span>: <span class="hljs-literal">True</span>,<br/>    <span class="hljs-string">&#39;OPTIONS&#39;</span>: {<br/>        <span class="hljs-string">&#39;context_processors&#39;</span>: [<br/>            <span class="hljs-string">&#39;django.template.context_processors.debug&#39;</span>,<br/>            <span class="hljs-string">&#39;django.template.context_processors.request&#39;</span>,<br/>            <span class="hljs-string">&#39;django.contrib.auth.context_processors.auth&#39;</span>,<br/>            <span class="hljs-string">&#39;django.contrib.messages.context_processors.messages&#39;</span>,<br/>            ],<br/>        },<br/>    },<br/>]<br/></code>

Das obige ist der detaillierte Inhalt vonErste Schritte mit Django Framework 1.0. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Python //Was bedeutet das?Nächster Artikel:Python //Was bedeutet das?