Django開発個人ブログサイト


--------------------------------------------------------------------------------------------------------------------
1.pythonとdjangoをインストールし、環境変数を構成する.
2.django-admin.pyファイルはディレクトリAにコピーされます(Aは、そのディレクトリの下にプロジェクトを作成したいことを示します).
3.「python django-admin.py startproject_name」を入力してプロジェクトを作成します.
4.「python.manage.py runserver 127.0.0.1:8000」を入力してローカルIPを実行し、プロジェクトを実行すると、ブラウザを選択し、URLを入力できます.http://127.0.0.1:8000/」ページを開きます.
5.「python.manage.py startapp appName」と入力して、次のように構成します.
1)urlsを手動で追加する.py;
2)appName、templates、staticなどを含む【setting.py】を構成する(後続のデータベースタイプもここで構成する).
3)各appNameのurlsを理解する.pyとprojectNameディレクトリのurls.pyの関係は、構成を行うよりも;
4)appNameディレクトリの下の【views.py】を作成し、変数と具体的なページを返します.
6.「python.manage.py sycndb」を入力してデータベースを作成
-------------------------------------------------------------------------------------------------------------------------------
1.pycharm,python,djangoダウンロードインストールが完了したら、新しいプロジェクトを作成します:mysite(左側のバーのdjango)
ファイルの説明は次のとおりです.
  • 【manage.py】Djangoプロジェクトとさまざまな方法で対話できる実用的なコマンドラインツールです.
  • [_init_.py]空のファイルで、ディレクトリがPythonパッケージであることをPythonに伝えます.
  • 【settings.py】このDjangoプロジェクトの設定/構成.
  • 【urls.py】このDjangoプロジェクトのURL宣言;Djangoが駆動するウェブサイト「ディレクトリ」.
  • 【wsgi.py】WSGI対応のWebサーバのエントリで、プロジェクトを実行します.

  •     -------------------------------------------------------------------------------------------------------------------------
    a.Djangoプロジェクトを作成しpython manageを使用する.py startapp blogコマンドでAPPを作成しsettings.pyにblogを追加
    
    INSTALLED_APPS = (
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'blog',
    )
    

    b.データベースの操作:まず、MySQLにblogというデータベースを作成します.そしてsettingsでpyにデータベースを追加するには、次のように構成されています.
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'blog',
            'USER': 'name',
            'PASSWORD':'pass',
            'HOST':'localhost',
            'PORT':'3306',
        }
    }

    c.models.pyには、データベースの説明として次のコードが挿入されます.
    # encoding:utf8
    from django.db import models
    from django.contrib import admin
    
    
    class Article(models.Model):
        title = models.CharField(max_length=100)    #     
        category = models.TextField(max_length=50, blank=True)  #     
        date_time = models.DateTimeField(auto_now_add=True) #     
        content = models.TextField(blank=True, null = True) #       
    
        def __unicode__(self):
            return self.title
    
        class Meta: #        
            ordering = ['-date_time']
    
    # Register model
    admin.site.register(Article)

    d.データベースの同期
    python manage.py migrate
    python manage.py makemigrations
    python manage.py migrate

    e.はインタフェースおよび対応するデータベース操作である:1、settings.pyのTEMPLATESのDIRS位置は以下のように変更されます.
    'DIRS': [BASE_DIR+"/templates",],

    2、TEMPLATEディレクトリの下にHTMLファイルを追加し、コードは以下の通りである:(1)base.html
    
    
    
        
    
    
    
        Vincent's Blog
        
        
        
    
    
    
    {% block content %} {% endblock %}

    (2).home.html
    {% extends "base.html" %}
    
    {% block content %}
    
    {% for post in post_list %}

    {{ post.title }}

    {{ post.content }}

    {% endfor %}
    {% endblock %}

    (3)、views.pyに次のコードを追加します.
    
    from blog.models import Article
    from datetime import datetime
    from django.http import HttpResponse
    from django.shortcuts import render
    
    # Create your views here.
    
    
    def home(request):
        post_list = Article.objects.all()
        return render(request, 'home.html', {'post_list':post_list})
    
    
    def detail(request, my_args):
        post = Article.objects.all()[int(my_args)]
        str = ("title = %s, category = %s, date_time = %s, content = %s"
               % (post.title, post.category, post.date_time, post.content))
        return HttpResponse(str)

    (4)、urlsを修正する.pyは次のようになります.
    from django.conf.urls import include, url
    from django.contrib import admin
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('index/',home),
    ]

    プロジェクトを開始し、ブラウザにlocalhost:8000と入力
    バックグラウンドアカウントの作成:
    python manage.py createsuperuser

    http://127.0.0.1:8000/admin/