前提・実現したいこと
Django初学者です。表題の繰り返しになってしまいますが、
Djangoの汎用ビュー(クラスベースビュー)と関数ベースビューを同時に使ってもよろしいのでしょうか?
素朴な疑問なのですが、検索しても解決しませんでしたので、質問させていただきました。
現在、開発しているものでは汎用ビューのみを使っていますが、フォームAPIを使わずにHTMLの独自のフォームを用いて値をDjangoのモデルに登録する際に、関数ベースビューを用いているこちら[※]を参考にしたいと考えております。
違った種類のビューを同一のviews.py上で作成してもよいのでしょうか?もし、同時に使ってよいとのことでしたら、用いる際に注意するべきことはありますか?
本日中には解決したいと考えておりますので、ご協力いただけると嬉しく思います。よろしくお願いいたします。
汎用ビューと混在させたい関数ベースビュー
参考リンク[※] ※同一のサイトを参照しています
from django.contrib.auth.models import User from django.shortcuts import render, redirect, get_object_or_404 from .models import Board, Topic, Post def new_topic(request, pk): board = get_object_or_404(Board, pk=pk) if request.method == 'POST': subject = request.POST['subject'] message = request.POST['message'] user = User.objects.first() # TODO: get the currently logged in user topic = Topic.objects.create( subject=subject, board=board, starter=user ) post = Post.objects.create( message=message, topic=topic, created_by=user ) return redirect('board_topics', pk=board.pk) # TODO: redirect to the created topic page return render(request, 'new_topic.html', {'board': board})
環境(ツールのバージョンなど)
CentOS8、Python3.6、Django2.2、PostgreSQL
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/09 02:59
2020/09/09 03:07
2020/09/09 04:07
2020/09/09 04:24 編集
2020/09/09 04:39
2020/09/09 09:47 編集