5

私はDjango1.2を使用していますが、2つのユーザータイプ(1つは企業用、もう1つはコンサルタント用)が必要です。モデル内のオブジェクト(is_companyまたはis_consultantのブール値など)またはDjangoのグループを使用して、これらを区別します。これは、この問題のどちらが簡単かによって異なります。私が完全な初心者でなければ、それはそれほど問題ではないと思います;)

認証バックエンドにdjango-registrationを使用しており、ユーザータイプ(会社とコンサルタント)ごとにWebページに個別のフォームがあります。2つのケースでほぼ同じ2つの異なるビューを作成するのが最善ではないと思うので、2つのタイプのいずれかとしてサインアップしたユーザーを識別/登録するのが最善の方法だと思います。

ご協力いただきありがとうございます。

4

2 に答える 2

2

登録時にコンサルタントか会社かをユーザーに選択してもらいたいですか?その場合は、をサブクラス化してRegistrationFormから、新しいフォームをdjango-registrationのパラメーターに渡すことで、独自のフォームを作成できます(その方法についてはドキュメントをお読みください)。

フォームをサブクラス化し、追加のフィールドを追加するには、次のようにします。

from registration.forms import RegistrationForm

USER_TYPES = (
   ('consultant', 'Consultant'),
   ('company', 'Company'),
)

class MyRegistrationForm(RegistrationForm):
     user_type = forms.ChoiceField(choices=USER_TYPES)

それから、シグナルをキャッチし、フォームデータで必要に応じて実行する必要がありますdjango-registrationには優れたドキュメントがあります

それがあなたが探していたものであることを願っています。

于 2010-07-06T20:16:29.263 に答える
1

POSTを調べるのではなく、クエリ文字列で情報を渡すことができます。したがって、1つの「ボタン」(実際には単なるリンク)はにリンクし/form?type=consultant、他の「ボタン」はにリンクし/form?type=companyてから、GET情報から取得できます。

于 2011-03-15T16:17:10.613 に答える