2011-03-08 100 views
1

我開始把prepopulated_fields選擇在我的管理員突破和有趣的東西開始發生 我有這個模型Django的預填充字段帶有連

class Pelicula(models.Model): 
    nombre = models.CharField(max_length=50) 
    slug = models.SlugField(max_length= 15, unique= True, help_text = "Nombre corto para la URL", primary_key= True) 

,這在admin.py

class PeliculaAdmin(admin.ModelAdmin): 
    prepopulated_fields = {'slug' : ['nombre']} 

沒有什麼花哨,它在各處都有描述 但是,只要我在一個object_detail通用視圖中使用這個slug,那麼slug只有在它只有一個單詞時才起作用。 所以,如果我有這種說法

def detalle_pelicula(request, pelicula): 
    return list_detail.object_detail(
     request, 
     queryset = Pelicula.objects.all(), 
     slug = pelicula, 
     template_name='sections/detalle_pelicula.html', 
     template_object_name = 'pelicula', 
     extra_context = extra_context, 
     ) 

如果原來的名字已經在它的任何空間,我得到一個「否Page指定的查詢相匹配。」錯誤。所以細節/測試將工作,但細節/測試頁將不會 我有點難住

+0

重複http://stackoverflow.com/questions/10253200/hyphens-in-slugfield的 – user9876 2012-08-17 12:42:57

回答

3

我猜你有你的urlconf設置解析你的slu using \ w +嘗試使用[-A-Za-z0 -9 _] +

# e.g. in urls.py 

url(r'del/(?P<slug>[-A-Za-z0-9_]+)/$', 'person_delete', name='person_delete'), 
+0

權了!太感謝了。 – takosuke 2011-03-08 13:35:21