2012-04-25 11 views
2

私はジャンゴ・登録コードを編集せずに、HTMLの活性化の電子メールを持っているカスタムバックエンドを作成しDjango登録:カスタムバックエンドを含めるには?

(REF。django+ send email in html with django-registration、最後の答え)

これはに格納されDefaultBackendのように、core/registration/backends/htmldefault/__init__.pyに保存されているバックエンドは、ありますregistration/backends/__init__.py

from registration.forms import RegistrationForm 
from core.models import HtmlRegistrationProfile 

class HtmlDefaultBackend(object): 
    #etc same as DefaultBackend but using HtmlRegistrationProfile instead of RegistrationProfile 

、これが私のurls.pyです

urlpatterns = patterns('', 
    #... 
    url(r'^accounts/register/$', register, {'backend': 'core.registration.backends.htmldefault.HtmlDefaultBackend','form_class': UserRegistrationForm}, name='registration_register'), 
    url(r'^accounts/', include('registration.urls')), 
    #... 
) 

しかし、私は..私は聞いてるのよ何/registration/backends/__init__.py in get_backend, line 27

によってスロー

ImproperlyConfigured at /accounts/register/ 

Error loading registration backend core.registration.backends.htmldefault: "No module named registration.backends.htmldefault" 

をされ得るが、それは、登録パッケージの外にカスタムジャンゴ登録バックエンドを持つことは可能でしょうか?または、単純なデフォルトバックエンドのように/登録/バックエンド/の下になければなりませんか?

答えて

2

可能です。

  1. チェックすべてのフォルダ(コア、登録、バックエンド、 htmldefaultは)__init__.pyを持っている場合(空にすることができます)。

  2. コアフォルダには、プロジェクトディレクトリにありますか?

+1

2愚かなエラーが...最初にあなたのポイント1、私は、(それは非常に悪いミスだった)すべてのフォルダに__init__.pyを作成していなかった、そのパスが登録パッケージとの競合を作成した。..今ではすべてがあります働いて、ありがとう – apelliciari