can save messages

Signed-off-by: Nico Schottelius <nico@freiheit.schottelius.org>
This commit is contained in:
Nico Schottelius 2015-05-02 20:41:11 +02:00
parent 9350814f57
commit 0f1fe73895
2 changed files with 28 additions and 11 deletions

View file

@ -1,8 +1,8 @@
{% if error_message %}<p><strong>{{ error_message }}</strong></p>{% endif %} {% if error_message %}<p><strong>{{ error_message }}</strong></p>{% endif %}
<form action="{% url 'digital_glarus:send_message' %}" method="post"> <form action="{% url 'digital_glarus:index' %}" method="post">
{% csrf_token %} {% csrf_token %}
{{ form }}
<input type="submit" value="Send Message" /> <input type="submit" value="Send Message" />
</form> </form>

View file

@ -1,15 +1,13 @@
from django.shortcuts import render import datetime
from django.shortcuts import get_object_or_404, render from django.shortcuts import get_object_or_404, render
from django.forms import ModelForm
from django.http import HttpResponseRedirect
from django.core.urlresolvers import reverse
from .models import Message from .models import Message
def detail(request):
pass
def detail(request, message_id): def detail(request, message_id):
p = get_object_or_404(Message, pk=message_id) p = get_object_or_404(Message, pk=message_id)
@ -19,7 +17,26 @@ def detail(request, message_id):
def send_message(request): def send_message(request):
pass pass
class MessageForm(ModelForm):
class Meta:
model = Message
fields = ['name', 'email', 'phone_number', 'message' ]
def index(request): def index(request):
if request.method == 'POST':
message = Message(received_date=datetime.datetime.now())
form = MessageForm(request.POST, instance=message)
if form.is_valid():
form.save()
return HttpResponseRedirect(reverse("digital_glarus:index"))
form = MessageForm()
message_list = Message.objects.order_by('-received_date')[:5] message_list = Message.objects.order_by('-received_date')[:5]
context = { 'message_list': message_list, }
context = {
'message_list': message_list,
'form': form,
}
return render(request, 'digital_glarus/index.html', context) return render(request, 'digital_glarus/index.html', context)