I am doing a Django project and when I tried to access 127.0.0.1:8000/articles/create, I got the following error in my Ubuntu terminal:
/home/(my name)/django_test/article/forms.py:4: RemovedInDjango18Warning: Creating a ModelForm without either the 'fields' attribute or the 'exclude' attribute is deprecated - form ArticleForm needs updating class ArticleForm(forms.ModelForm):
In addition, I also got the following error when visiting my actual localhost site:
ValueError at /articles/create/ The view article.views.create didn't return an HttpResponse object. It returned None instead.
Here is my forms.py file:
from django import forms from models import Article class ArticleForm(forms.ModelForm): class Meta: model = Article
And here is my views.py file:
from django.shortcuts import render_to_response from article.models import Article from django.http import HttpResponse from forms import ArticleForm from django.http import HttpResponseRedirect from django.core.context_processors import csrf #import pdb; pdb.set_trace() # Create your views here. def articles(request): language = 'en-us' session_language = 'en-us' if 'lang' in request.COOKIES: language = request.COOKIES['lang'] if 'lang' in request.session: session_language = request.session['lang'] return render_to_response('articles.html', {'articles': Article.objects.all(), 'language' : language, 'session_language' : session_language}) def article(request, article_id=1): return render_to_response('article.html', {'article': Article.objects.get(id=article_id) }) def language(request, language='en-us'): response = HttpResponse("setting language to %s" % language) response.set_cookie('lang', language) response.session['lang'] = language return response def create(request): if request.POST: form = ArticleForm(request.POST) if form.is_valid(): form.save() return HttpResponseRedirect('/articles/all') else: form = ArticleForm() args = {} args.update(csrf(request)) args['form'] = form return render_to_response('create_article.html', args)
I'm not sure how to fix this problem. I looked at the Django documentation but I couldn't find a solution to my problem so any help would be appreciated.