PyCharmとDjangoでサクッとWebアプリの作成
はじめに
PyCharmでDjangoアプリを作成することには次のような利点があります。
- Django関連のコマンド入力を削減できる
- デバッグがしやすい
今回は、Djangoサーバの起動と簡単なWebアプリの作成を行ってみます。
Djangoサーバの起動
PyCharmを開くと次のような画面が現れるので、Create New Projectをクリックします。
次に左側からDjangoを選択します。ここではDjangoのプロジェクト名はuntitled4
となっています。また、Application name
にpolls
と入力し、Createをクリックします。
少し待つとプロジェクトとアプリケーションが作成されます。右上の三角形のボタンをクリックするとDjangoサーバが起動します。自分の環境ではなぜかos
が定義されていなかったため、settings.py
にimport os
と記述します。
記述したあとで再度右上の三角形のボタンをクリックするとDjangoサーバのURLが表示されるのでクリックします。
Webアプリの作成
Djangoのプロジェクトとアプリケーションは次のような関係となっています。プロジェクトとアプリケーションについて、2種類のurls.py
を用いることで、アプリケーションごとの管理がしやすくなります。
画像元:https://zenn.dev/hathle/books/django-blog-book/viewer/06_urls
2つのurls.py
とviews.py
を変更することで、Webサイトを自作できます。
polls
ディレクトリ内にurls.py
を新規作成し、次のように記入します。
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index'),
]
プロジェクト直下にもとから作成されているurls.py
に、次のように記入します。
from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [
url(r'^polls/', include('polls.urls')), #this line added
url(r'^admin/', admin.site.urls),
]
polls
ディレクトリ内にviews.py
に、次のように記入します
from django.http import HttpResponse
def index(request):
# render() に置き換えると、用意したHTMLファイルにrequestやPythonの変数を渡すこともできる
return HttpResponse("Hello, world. You're at the polls index.")
実行ボタンをクリックまたはcontrol+R
としてhttp://127.0.0.1:8000/polls/
にアクセスすると、Hello, world. You're at the polls index.
と表示されます。
その他Tips
サーバの実行状態でプログラムを書き換えて
command+S
と保存したりタブを切り替えると、自動的にサーバをリロードしてくれます。Djangoでデータベースなどのコマンド操作を行う際には、
python manage.py
の後ろにコマンドを入力するのですが、option+R
とすると、python manage.py
を省略しつつ、動的に補完を表示するmanage.py
コンソールが現れます。PyCharm画面右上のDatabaseを用いることで、データベースの操作(挿入・検索・更新・削除)を簡単に行うことができます。データベースの作成はこのように行います。
Djangoにはあまり関係ありませんが、PyCharm画面右上のSciViewでmatplotlibグラフやpandas表の表示を行うことができます。
おわりに
コーディングを効率化させるPyCharmと、Webアプリ開発を効率化させるDjangoがうまく連携されていて便利だと思いました。次はデータベースやCSRF対策など、もう少し踏み込んだことを調べてみたいです。
追記
年間10,000円の有料版PyCharmでないと、Web開発において制限があるようです。自分は学生ライセンスが有効になっていたのでそのことに気づきませんでした。。
無料版と有料版の機能の違いはこちら、学生ライセンスの申請方法はこちらになります。
Author And Source
この問題について(PyCharmとDjangoでサクッとWebアプリの作成), 我々は、より多くの情報をここで見つけました https://qiita.com/thmd9726/items/9ea9ef1161c537c432ad著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .