У меня есть две модели, и они связаны через ForiegnKey в моем проекте Django - PullRequest
0 голосов
/ 20 ноября 2018

# Models.py

     class Appname(models.Model):

       name=models.CharField(max_length=150,blank=False,null=False)

       def __str__(self):
           return self.name
class placement(models.Model):
    user=models.ForeignKey(User,related_name='placeid', null=True, default=None,on_delete=models.CASCADE) 
    name=models.ForeignKey(Appname,related_name='appname',null=True,default=None,on_delete=models.CASCADE,editable=False)
    ad_space=models.CharField(max_length=150,blank=False,null=False)
    PID_TYPE = (
        ('FN','FORMAT_NATIVE'),
        ('FNB','FORMAT_NATIVE_BANNER'),
        ('FI','FORMAT_INTERSTITIAL'),
        ('FB','FORMAT_BANNER'),
        ('FMR','FORMAT_MEDIUM,RECT'),
        ('FRV','FORMAT_REWARDED_VIDEO'),
        )

       format = models.CharField(max_length=3,choices = PID_TYPE,default = 'FN',blank=False, null=False)
       pid=models.CharField( max_length=50,default='',blank=False, null=False)
       cpm=models.IntegerField(default=0,blank=False, null=False)
       ADS_TYPE=(
       ('FB','FACEBOOK'),
       ('G','GOOGLE'),
       )         source=models.CharField(max_length=2,choices=ADS_TYPE,default='FB',blank=False, null=False)
      comments=models.TextField(default='',blank=False, null=False)
      objects=models.Manager()


      def __str__(self):
         return self.ad_space

      def get_absolute_url(self):
         return reverse("dashapp:view")

Вот вопросы.

Я сохраняю свою первую модель через форму, используя общий вид, теперь я использовал ForeignKey во второй модели.Я хочу, чтобы при заполнении второй формы переменная name автоматически заполнялась значением первой модели.я могу это сделать ??

1 Ответ

0 голосов
/ 20 ноября 2018

Вы можете использовать начальный аргумент формы https://docs.djangoproject.com/en/2.1/ref/forms/api/#django.forms.Form.initial

name = Appname.objects.get(name='name')
form = SecondForm(initial={'name': name})
...