4いろんなリクエストに応える。フォームをつくってみよう。

 

フォームとえいえば、

チェックボックスだったり、

ラジオボックスだったり、

名前を書くとか、

年齢を書く、

生年月日を選ぶというアレです。

 

JavaScriptでもできるやん!

 

とおもうのですが。

python(Django)をつかうと、「入力していませんよ」とか「値が無効ですよ」といったエラーメッセージが出るように設定したり、何かと便利なようです。

 

というわけで、これまでの復習も兼ねて、新しいプロオジェクトをつくります。

 

 

手を加えたり作成するフォルダ、ファイルは次のよう。

formproject>urls.py

formproject>setting.py

formproject>formapp>urls.py

formproject>formapp>views.py

formproject>formapp>templates>formapp>formapp.html

 

まずターミナルでプロジェクトフォルダをつくります。()

cd /Users/otonone/Desktop/python_lesson/Django/

django-admin startproject formproject

それからアプリフォルダをつくります。

cd /Users/otonone/Desktop/python_lesson/Django/formproject

python3 manage.py startapp formapp1

いくつかappを使いかもしれないので名前をformapp1にしました。

formproject>formapp1>templates>formapp1>formapp1.html

{% load static %} 
<html lang="ja">
<head>
<meta charset="utf-8">
<title>{{title}}</title>
<link rel="stylesheet" type="text/css"
href="{% static 'hello/css/style.css' %}" />
 <!--cssをプロジェクトフォルダ内につくったstaticフォルダで指定する場合に書く。importのようなもの-->
</head>
<body>
<h1>{{title}}</h1>
<p>{{msg}}</p>
<form action="{% url 'formfunction' %}" method="post">
{% csrf_token %}
<label for="msg">message: </label>
<input id="msg" type="text" name="msg">
<input type="submit" value="click">
</form>
</body>
</html>

 

formproject>formproject>urls.py

from django.contrib import admin

from django.urls import path, include

urlpatterns = [

path('admin/', admin.site.urls),

path('', include('formapp1.urls')) ]

 

formproject>formapp1>urls.py

from django.urls import path

from . import views

app_name='tryapp'

urlpatterns = [

path('form1app/', views.formfunction, name='formfunction'),

]

 

formproject>formproject>settings.py

INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'formapp1.apps.Formapp1Config' ]

dfg

 

コメント