2012-09-14 48 views
1

我已經創建了一個帶有「parentId」和「email_notification」等自定義字段的評論應用程序。 在模板中,comments標籤可以拉出我添加的項目,但「get_comment_form」標籤不顯示錶單。另外,如何自定義該表單中的字段?如何在Django中爲自定義表單使用內置標籤「評論」

models.py

from django.db import models 
from django.contrib.comments.models import Comment 

class CommentWithParent(Comment): 
    parentId = models.IntegerField(default = 0) 
    email_notification = models.BooleanField(default = False) 

forms.py

from django import forms 
from django.contrib.comments.forms import CommentForm 
from mblog.my_comment.models import CommentWithParent 
from django.db import models 


class CommentWithParentForm(CommentForm): 

    parentId = models.IntegerField(default = 0) 
    email_notification = models.BooleanField(default = False) 

    def get_comment_model(self): 
     return CommentWithParent 

    def get_comment_create_data(self): 
     data = super(CommentWithParentForm, self).get_comment_create_data() 
     return data 

    def get_form(self): 
     return self 

模板文件

{% load comments %} 
{% get_comment_form for entry as form %} 
+0

卓,歡迎來到Stack Overflow!我編輯了你的問題,試圖使它更清晰。我希望我已經正確地理解你想問的問題。如果沒有,您應該可以通過點擊「編輯者」旁邊的時間來重新編輯或回滾編輯。 – pjmorse

+0

謝謝你,英語不是我的母語:) –

+0

沒關係:你比我在英語以外的任何語言都做得更好。我們來幫忙! – pjmorse

回答

0

您可以瞭解更多AB在the documentation中自定義表單模板。一般而言,您可以隱藏窗體中的某些字段或控制使用哪些窗體小部件來顯示它們。要改變它們的外觀,你需要使用應用程序的CSS,或者像文檔描述的那樣創建一個新模板。

我不完全確定爲什麼get_comment_form標籤不適合你。上面鏈接的文檔表明,您需要在視圖中使用不同標籤呈現模板的表單; here's that section的文檔。如果你不使用Django 1.4,情況可能會有所不同。

+0

thx!我擴展了我的評論標籤 –