Inserting a foreign field in django forms -


i have model following field :

class dataset(models.model):     dataset_id = models.textfield(primary_key=true)     title = models.textfield(blank=true, null=true)     taxonomy = models.foreignkey('organism', blank=true, null=true)     citation = models.textfield(blank=true, null=true)     summary = models.textfield(blank=true, null=true)     contributor = models.textfield(blank=true, null=true)  # field type guess.     submitted = models.datefield(blank=true, null=true)     last_updated = models.datefield(blank=true, null=true)     author = models.foreignkey('users', db_column='author', blank=true, null=true)      class meta:         managed = false         db_table = 'dataset' 

and following form , view.

class datasetform(forms.modelform):     dataset_id = forms.charfield(required=true,help_text="dataset_id")     title = forms.charfield(required=true,help_text="title")     taxonomy = forms.integerfield(required=true,help_text="taxanomy id (ingeter)")     citation = forms.charfield(required=true,help_text="citation")     summary = forms.charfield(required=true,help_text="summary")     contributor = forms.charfield(help_text="contributor (separated comma)")     submitted = forms.datefield(initial = datetime.now,required=true,help_text="submitted date")     last_updated = forms.datefield(initial = datetime.now,required=true,help_text="last updated date")     author = forms.integerfield(required=true,help_text="author enter integer")      class meta:         model = dataset         fields = ('dataset_id','title','taxonomy','citation','summary','contributor','submitted','last_updated','author') 

and view :

def add_dataset(request): context_dict = {} if request.method == 'post':     req_dict = request.post.copy()     req_dict['taxonomy'] = organism.objects.filter(taxonomy_id=request.post['taxonomy'])     req_dict['author'] = users.objects.filter(id=request.post['author'])     form = datasetform(req_dict)     if form.is_valid():         return httpresponseredirect('/msrb/')     else:         print form         print form.errors else:     form = datasetform() context_dict['form'] = form template = get_template('msrb/add_dataset.html') context = requestcontext(request,context_dict) return httpresponse(template.render(context)) 

and need insert in database. now, when copy request.post different variable , try validate form, field errors foreignkey

enter whole number.

however, if dont copy request.post, not able validate form either.

i not sure how proceed it. pointers helpful

by form definition taxonomy , author intergerfield. dict copied set queryset value in form, obvious not number.

why did choose overwrite fields in modelform? want users type id of object instead of using select? because in case overwrite widgets within meta.

class datasetform(forms.modelform):     class meta:         model = dataset         fields = ('dataset_id','title','taxonomy','citation','summary','contributor','submitted','last_updated','author')         widgets = {             'taxonomy': forms.numberinput,             'author': forms.numberinput,         } 

more info: https://docs.djangoproject.com/en/1.8/topics/forms/modelforms/#overriding-the-default-fields


Comments

Popular posts from this blog

javascript - Bootstrap Popover: iOS Safari strange behaviour -

Magento/PHP - Get phones on all members in a customer group -

session - Logging Out Using PHP -