0

モデルフォーム フィールドにデータベース データを入力し、ラジオ ボタンに表示したいと考えています。

これは私のモデルフォームです:

class jobpostForm_detail(ModelForm):
    class Meta:

        model = payment_detail
        fields = ('payment_type','country')

    widgets = {

        'payment_type':RadioSelect(),
            'country':RadioSelect(),    




    }

    def __init__(self, *args, **kwargs):
        super(jobpostForm_detail, self).__init__(*args, **kwargs)

        self.fields['country'].queryset = Country.objects.all() // This is not showing data in radio buttons.
        self.helper = FormHelper()
        self.helper.form_class = 'horizontal-form'
        self.helper.form_id = 'id-jobpostform'
        self.helper.form_class = 'blueForms'
        self.helper.form_method = 'post'
             #self.helper.form_action = '/'

        self.helper.add_input(Submit('submit_addcontent', 'Pay'))

        super(jobpostForm_detail, self).__init__(*args, **kwargs)

国モデル:

class Country(models.Model):

    country_id =             models.AutoField(primary_key=True)
    country_name =        models.CharField(max_length=255,null=True, unique=True)

    def __unicode__(self):
        return unicode(self.country_id)
        return unicode(self.country_name)

テンプレート:

   <form method="post" action="/portal/next/post/" class="blueForms" id="id-jobpostform">


    {% csrf_token %}

    {% crispy form %}

    </form>
This is my view:

def payment(request):
    #form = jobpostForm_first()
    country_list = Country.objects.all()
    if request.method == 'POST':
        form = jobpostForm_detail(request.POST)

        #if form.is_valid():
        form.save()
        return HttpResponseRedirect('/thanks/')
    else:
        form = jobpostForm_detail()
        #form.fields['country'].queryset = Country.objects.all()

    c = {}
    c.update(csrf(request))

    return render_to_response('portal/display.html',{
        'form':form,'country_list':country_list
    },context_instance=RequestContext(request))

私のデータもデータベースに入れられません

国名を表示したい..国IDを表示しています

4

2 に答える 2

0

initialオブジェクトを作成しFormながら使用できます。

次に例を示します。

# In views.py
my_form_obj = FormName(request.POST or None, initial = 
                       {
                           'field_name_in_model': Value_from_model, # This field value will be shown in the form when an unbound form is loaded.
                       })

詳細については、これを参照してください https://docs.djangoproject.com/en/dev/ref/forms/api/#dynamic-initial-values

于 2013-04-02T05:51:25.420 に答える