2012-12-11 25 views
0

我對Django相當陌生。我有一個需要顯示的表單,所以我使用FormView類。然而,因爲我改變了使用這個類(我只是它以前是一個正常的功能),我得到一個錯誤:Django - 與FormView錯誤

__init__() takes exactly 1 argument (2 given)

在位置:

/Library/Frameworks/EPD64.framework/Versions/7.3/lib/python2.7/site-packages/django/core/handlers/base.py in get_response, line 111

回溯很簡單:

response = callback(request, *callback_args, **callback_kwargs)

相關的看法是:

class HMFInput(FormView): 
    """ 
    The form for input. 
    """ 
    template_name = 'hmfform.html' 
    form_class = forms.HMFInput 
    success_url = '/hmf_finder/hmf_image_page/' 

    def form_valid(self,form): 
     canvas, file_object = utils.hmf_output(form) 
     self.request.session["canvas"] = canvas 
     self.request.session["text"] = file_object 
     return super(HMFInput,self).form_valid(form) 

我試圖幾乎完全遵循文檔中的示例。任何想法出了什麼問題?

編輯:我的urls.py調用與以下的觀點:

url(r'^hmf_finder/$', 
    'hmf_finder.views.HMFInput', 
    name = 'HMF-input'), 

乾杯。

+1

你是如何調用這個觀點?你是否嚴格執行urls.py?你能發表你如何稱呼這個觀點嗎?另外,作爲一個附註,最好在CamelCase中爲您的課程名稱提供詳細的名稱。 – Esteban

+0

@Esteban - 非常感謝您的快速回復!我認爲它是從'urls.py'調用的。我將編輯我的帖子以添加此信息... – StevenMurray

+0

嘿,我想通了。在嘗試使用基於類的視圖之前,應該閱讀該教程。感謝您指點我正確的方向! (請參閱https://docs.djangoproject.com/en/dev/topics/class-based-views/) – StevenMurray

回答

1

試試這個在urls.py:

from finder.views import HMFInput 

url(r'^hmf_finder/$', HMFInput.as_view(), name = 'HMF-input'), 
+0

是的。這就是我發現的工作。乾杯。 – StevenMurray