django3.0.5は簡単な例に取り付けられました

1.django 3.0.5インストール

1.1 Pythonのバージョン

:Pythonの3.7.7(d7c567b08f、2020年3月10日、午前2時56分16秒v3.7.7) 
ダーウィンの[クラン6.0(打ち鳴らす-600.0.57)]
タイプの"ヘルプ"、 "著作権"、 "クレジット"または"ライセンス"詳細については。
 

、コマンド入力後しばらくお待ちください

>>>輸入ジャンゴ

>>>プリント(django.get_version())
3.0.5

またはコマンドを使用して、

 python -mジャンゴ--version
3.0.5

プロジェクトの作成1.2

ジャンゴ-adminのstartprojectのdjango3demo

ディレクトリ構造:manage.py

  • 最も外側のdjango3demo / プロジェクトのルートディレクトリにだけコンテナを、名前のルートはジャンゴには影響しません、あなたはあなたのような任意の名前に名前を変更することができます。
  • manage.py:あなたは、コマンドラインツールDjangoのプロジェクト管理を使ってみましょうするためのさまざまな方法。
  • django3demoの層があり/ 、あなたのプロジェクトが含まれているディレクトリが、それは純粋なPythonパッケージです。その名前は、Pythonのパッケージ名の内側にそれには何も参照するときに使用するということです。(このようなdjango3demo.urlsとして)。
  • mysite/__init__.py:このディレクトリがPythonパッケージ考慮すべきであるとのPythonを告げる空のファイル。
  • mysite/settings.py:Djangoプロジェクトの設定ファイル。
  • mysite/urls.py:あなたのサイトとしてURL声明Djangoプロジェクト、「ディレクトリ」。
  • mysite/asgi.py:あなたはASGIに準拠したWebサーバーでプロジェクトエントリを実行しています。
  • mysite/wsgi.py:あなたは入学WSGIに準拠したWebサーバー上でプロジェクトを実行すると。

 

開発のための単純なサーバー1.3

あなたが本当にDjangoのプロジェクトの成功を作成するかどうかを確認しましょう。あなたの現在のディレクトリが外側django3demoカタログされていない場合、このディレクトリに切り替えて、次のコマンドを実行してください:注スタートアップディレクトリがdjango3demo内のディレクトリです

python manage.pyのrunserver

システムチェックは何の問題(沈黙0)を特定していません。

あなたは17未適用、マイグレーション(複数可)を持っています。管理、認証、contenttypesの、セッション:アプリ(S)のためのマイグレーションを適用するまで、あなたのプロジェクトが正常に動作しない場合があり
それらを適用するために実行「のpython manage.py移行」。

2020年4月8日-午前3時51分21秒
Djangoのバージョン3.0.5、設定「django3demo.settings」を使用して
http://127.0.0.1:8000/で開発サーバーの開始は、
CONTROL-Cでサーバーを終了します。

 

Ctrl + Cキーで閉じる閉じるサービス

再始動に成功した後のサービス:1.3.1は、次のように記録し、移行を実行します

python manage.py移行
操作を実行するには:
  管理、認証、contenttypesの、セッション:すべてのマイグレーション適用
マイグレーションを実行する:
  contenttypes.0001_initial ... OK適用
  auth.0001_initial ... OK適用
  admin.0001_initial ... OK適用
  適用する管理者を。 0002_logentry_remove_auto_add ... OK
  admin.0003_logentry_add_action_flag_choicesを適用... OK
  contenttypes.0002_remove_content_type_nameを適用... OK
  auth.0002_alter_permission_name_max_lengthを適用... OK
  auth.0003_alter_user_email_max_lengthを適用... OK
  auth.0004_alter_user_username_optsを適用する... [OK]を
  適用auth.0005_alter_user_last_login_null。 .. OK
  auth.0006_require_contenttypes_0002を適用... OK
  auth.0007_alter_validators_add_error_messagesを適用... OK
  auth.0008_alter_user_username_max_lengthを適用... OK
  auth.0009_alter_user_last_name_max_lengthを適用... OK
  auth.0010_alter_group_name_max_lengthを適用する... [OK]を
  適用しauth.0011_update_proxy_permissions ... OK
  適用セッションOK ... .0001_initial

赤いヒントを再起動しなかった後、

StatReloaderでファイルの変更を監視
実行システムチェック...

システムチェックは何の問題(沈黙0)を特定していません。
2020年4月8日- 3時57分21秒
Djangoのバージョン3.0.5、設定「django3demo.settings」を使用して
http://127.0.0.1:8000/で開発サーバーの開始は、
CONTROL-Cでサーバーを終了します。
 

http://127.0.0.1:8000/に1.4ブラウザ

ポーリングポーリングを作成します。2.

manage.py startappのポーリングのpython $

以下のディレクトリの生成

あなたの最初のビューを書く2.1

世論調査/ views.py 

2.2世論調査は/ urls.pyファイルを追加します

2.3次のステップは、我々はルートのURLconfファイルに作成するように指定することである  polls.urls モジュール。ango3demoクリックする/urls.py 文書を  urlpatternsリストに挿入するために  include()、次のように、:

django.contribインポート管理者から
django.urlsからインポート、パス含む

urlpatterns = [ 
    パス( 'ポーリングを/'() 'polls.urls'を含む)、
    パス( '管理/'、admin.site.urls)
]

備考:

あなたは、常に使用する必要があり、他のURLパターンを含む場合には  include() 、  admin.site.urls それが唯一の例外です。

2.4起動サービス、127.0.0.1:8000

 127.0.0.1:8000/pollsを入力します。

2.5管理者アカウントを作成します。

 python manage.pyのcreatesuperuserは、
ユーザー名とパスワードとメールボックスを入力してください

 

サイト管理ページを入力する2.6

2.7は、投票アプリケーション管理ページに追加しました

世論調査/ admin.py

2.8経験と便利な管理機能

 

 

3.自動テスト

定義されたtests.py 

輸入日時

django.test輸入のTestCaseから
django.utilsからは、タイムゾーンをインポート

.modelsから質問インポート


クラスQuestionModelTests(テストケース):

    デフtest_was_published_recently_with_future_question(自己):
        「」」
        was_published_recently()そのPUB_DATE質問についてfalseを返す
        将来のです。
        『』 「
        時間= timezone.now()+ datetime.timedelta(日= 30)
        future_question =問(PUB_DATE =時間)
        self.assertIs(future_question.was_published_recently()、偽)

3.1テストの実行

 python manage.pyテストポーリング

 

トレースバック(最新の呼び出しの最後):
  ファイル"/Users/apple/PythonProjects/django3demo/polls/tests.py"、ライン18、test_was_published_recently_with_future_questionで
    self.assertIs(future_question.was_published_recently()、偽)
はAttributeError: '質問'オブジェクトが持っています無属性「was_published_recently」

-------------------------------------------------- --------------------
0.001sで実行した1つの試験

FAILED(エラー= 1)

故障記録

  • test_was_published_recently_with_future_question プロセスは、作成  pub_date 30日の値  Question インスタンス。
  • その後、使用  assertls() 方法、発見された  was_published_recently() リターンを  True、私たちはそれを返すことを期待  False

python manage.pyテストポーリング
別名「デフォルト」...のためのテスト・データベースの作成
は問題を特定していないシステムチェックを(0沈黙します)。
..
------------------------------------------------ ----------------------
0.002sで蘭2つのテスト

OK

3.2包括的なテスト

テストを作成します。

デフtest_was_published_recently_with_old_question(自己):
    "" " 
    was_published_recently()そのPUB_DATE質問はFalseを返す
    1日よりも古いです""" 
    時間= timezone.now() - datetime.timedelta(日= 1、秒= 1)
    old_question =質問(PUB_DATE =時間)
    (old_question.was_published_recently()、偽)self.assertIs 

デフtest_was_published_recently_with_recent_question(自己):
    "" " 
    was_published_recently()の質問そのPUB_DATEためTrueを返し
    最終日以内です。
    """ 時間= timezone.now ) - datetime.timedelta(時間= 23、分= 59、秒= 59)秒= 59) 
    recent_question =問(PUB_DATE =時間)
    self.assertIs(recent_question.was_published_recently()、TRUE)


 

公開された301元の記事 ウォン称賛16 ビュー30000 +

おすすめ

転載: blog.csdn.net/keny88888/article/details/105393347