Pocket

あるテーブルにデータを登録するときに使えるクラスベースビューとしてCreateViewというのがあります。

他の汎用クラスベースビューと同様に少しの記述で指定したテーブル(モデル)に対するデータの登録処理を書くことができます。

イメージとしては、対象となるモデルと更新対象のフィールド、登録画面のhtmlファイルのパス、更新成功した際のURLを指定するだけです。

from django.views.generic import CreateView
from django.urls import reverse_lazy

from .models import Book


class BookCreateView(CreateView):

    template_name = 'book/create.html'
    model         = Book
    fields        = ['title', 'author', 'date']
    success_url   = reverse_lazy('book:index')

シンプルな更新処理の場合は、上記のコードのイメージで各必要項目を指定するだけでオッケーです。もし何かしら更新部分に処理を入れたい場合は、【form_valid】というメソッドが保存処理になるので、このメソッドをオーバーライドすれば自由に処理を追加することも可能です。

Pocket

この記事が気に入ったら
フォローしよう

最新情報をお届けします

Twitterでフォローしよう

おすすめの記事