You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
865 B
30 lines
865 B
|
13 years ago
|
from django.http import HttpResponse
|
||
|
|
from django import forms
|
||
|
|
from django.views.generic.create_update import create_object
|
||
|
|
|
||
|
|
from models import Article
|
||
|
|
|
||
|
|
|
||
|
|
def index_page(request):
|
||
|
|
"""Dummy index page"""
|
||
|
|
return HttpResponse('<html><body>Dummy page</body></html>')
|
||
|
|
|
||
|
|
|
||
|
|
def custom_create(request):
|
||
|
|
"""
|
||
|
|
Calls create_object generic view with a custom form class.
|
||
|
|
"""
|
||
|
|
class SlugChangingArticleForm(forms.ModelForm):
|
||
|
|
"""Custom form class to overwrite the slug."""
|
||
|
|
|
||
|
|
class Meta:
|
||
|
|
model = Article
|
||
|
|
|
||
|
|
def save(self, *args, **kwargs):
|
||
|
|
self.cleaned_data['slug'] = 'some-other-slug'
|
||
|
|
return super(SlugChangingArticleForm, self).save(*args, **kwargs)
|
||
|
|
|
||
|
|
return create_object(request,
|
||
|
|
post_save_redirect='/views/create_update/view/article/%(slug)s/',
|
||
|
|
form_class=SlugChangingArticleForm)
|