0

外部キー参照を使用していくつかのモデルを定義しました- UserType は、いくつかのタイプがあり、ユーザーにマップできるマスターテーブルであり、多くのユーザーが同じユーザータイプを持つことができます。この後、期待どおりに機能する FormModel を作成しました。

Class UserType(models.Model):

    user_type_id        = models.AutoField(primary_key=True)
    user_type_name_en      = models.CharField(max_length=15)


    def __unicode__(self):
        return self.user_type_name_en

    class Meta:
        db_table = 'usertype'

class User(models.Model):

    user_id             = models.AutoField(primary_key=True)
    email_id            = models.EmailField( blank=False, null=False)
    user_type           = models.ForeignKey(UserType )

ユーザー登録フォーム

class UserRegistrationForm(ModelForm):
    class Meta:
            model = User
            fields = ['email_id',  'password', 'first_name' , 'last_name' , 'user_type' , 'corporate' ]

View.Py で

def registerUser(request): 
    print 'registerUser'
    if request.method == 'POST': # If the form has been submitted...
        form = UserRegistrationForm(request.POST) # A form bound to the POST data
        if form.is_valid():
            form.save ()

「user_type_name_en」が表示されるHTMLのユーザータイプのドロップダウンを取得しています。フォームを保存すると、「user_type_id」が不明な列であると表示されます。また、ドロップダウン項目に関連付けられている値ではなく、テキストのみにアクセスできます。それらを取得する方法は?

4

0 に答える 0