Ошибка говорит само за себя: SlugField
не принимает ключевое слово аргумент prepopulate_from
. Документы подтверждают это - он принимает только аргумент max_length
в дополнение к стандартному аргументу.Это должно быть сделано в классе администратора .
Редактировать : Таким образом, ваш файл модели будет:
from django.db import models
from datetime import datetime
class BlogPost(models.Model):
title = models.CharField(max_length=128)
slug = models.SlugField()
body = models.TextField()
published = models.BooleanField(default=True)
date_posted = models.DateTimeField(default=datetime.now)
def __unicode__(self):
return self.title
и администратор.Файл py для того же приложения будет выглядеть следующим образом:
from django.contrib import admin
from myapp.models import BlogPost
class BlogPostAdmin(admin.ModelAdmin):
prepopulated_fields = {"slug": ("title",)}
admin.site.register(BlogPost, BlogPostAdmin)
Если вы не понимаете, как работает сайт администратора, см. Часть 2 официального руководства по Django .