LoginSignup
4
4

More than 5 years have passed since last update.

Djangoのformからテキストのみを取得する.

Last updated at Posted at 2017-05-08

階層は以下の通りになっています.

mysite(startproject)
  |__setting.py
  |__urls.py
  |__model.py
manage.py
db.sqlite3
blog(app)
  |__views.py
  |__urls.py 
  |__wsgi.py

ソースコードはviews.pyに書きます.
form.cleaned_dataform内のテキストを取得できます.この段階では辞書型になっており,キーがtextなのでform.cleaned_data['text']で取得することができます.

blog/views.py
def article_edit(request, pk):
    post = get_object_or_404(Article, pk=pk)
    if request.method == "POST": 
        form = ArticleForm(request.POST, instance=post)
        if form.is_valid():
                # loggingを用いてコンソールにデバッグメッセージを表示する.
                logging.debug(form.cleaned_data['text'])
                post = form.save(commit=False)
                post.author = request.user
                post.published_date = timezone.now()
                post.save()
                return redirect('article_detail', pk = post.pk)
     else:
        form = ArticleForm(instance=post)
    return render(request, 'blog/article_edit.html', {'form' : form})

デバッグメッセージが表示できない場合は以下を参照してください.

Djangoのコンソールにデバッグのメッセージを出力する方法
http://qiita.com/NoriakiOshita/items/7716c6e46338768467eb

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4