Advertisement
Guest User

Untitled

a guest
Sep 6th, 2016
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.90 KB | None | 0 0
  1. class Article(models.Model):
  2. headline = models.CharField(max_length=50)
  3. content = models.CharField(max_length=1024)
  4.  
  5. def __str__(self):
  6. return self.headline
  7.  
  8. from django.contrib.auth.models import User
  9. from .models import Article
  10.  
  11. class LoginForm(forms.ModelForm):
  12. class Meta:
  13. model = User
  14. fields = ["username", "password"]
  15.  
  16.  
  17. class ArticleForm(forms.ModelForm):
  18. class Meta:
  19. model = Article
  20. fields = ['headline', 'content']
  21.  
  22. def auth_login(request):
  23. if request.method == "POST":
  24. username = request.POST['username']
  25. password = request.POST['password']
  26. user = authenticate(username=username, password=password)
  27. if user is not None:
  28. login(request, user)
  29. # Redirect to a success page.
  30. return HttpResponseRedirect('/home/')
  31. else:
  32. # Return an 'invalid login' error message.
  33. return HttpResponse('Invalid username / password. :( Try again? <3')
  34.  
  35. else:
  36. loginform = LoginForm()
  37.  
  38. context = {
  39. 'loginform': loginform
  40. }
  41. return render(request, 'home/login.html', context)
  42.  
  43. def add_article(request):
  44.  
  45. if request.method == "POST":
  46. form = ArticleForm(data=request.POST)
  47. if form.is_valid():
  48. article = form.save()
  49. article.save()
  50. # todo change to view article page
  51. return HttpResponseRedirect('/home/')
  52. else:
  53. return HttpResponse('Invalid Inputs. :( Try again? <3')
  54. else:
  55. form = ArticleForm()
  56.  
  57. context = {
  58. 'form': form,
  59. }
  60.  
  61. return render(request, 'home/add_article.html', context)
  62.  
  63. ...
  64. urlpatterns = [
  65. # match to ''
  66. # ex: /polls/
  67. url(r'^$', views.auth_login, name='login'),
  68. url(r'^home/$', views.index, name='index'),
  69. url(r'^articles/add/$', views.add_article, name='add_article')
  70. ]
  71.  
  72. <h2> Add an Article </h2>
  73. <form action="/" method="post">
  74. {% csrf_token %}
  75. {{ form }}
  76. <br><br>
  77. <input type="submit" value="Submit" name="addArticle" class="btn col2"/>
  78. </form>
  79.  
  80. The view home.views.auth_login didn't return an HttpResponse object. It returned None instead.
  81.  
  82. File "/Users/hills/Desktop/code/django-beanstalk/ebenv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
  83. 39. response = get_response(request)
  84.  
  85. File "/Users/hills/Desktop/code/django-beanstalk/ebenv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
  86. 249. response = self._get_response(request)
  87.  
  88. File "/Users/hills/Desktop/code/django-beanstalk/ebenv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
  89. 198. "returned None instead." % (callback.__module__, view_name)
  90.  
  91. Exception Type: ValueError at /
  92. Exception Value: The view home.views.auth_login didn't return an HttpResponse object. It returned None instead.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement