0

全て、

私は次のモデルを定義しています。

  class header(models.Model):
     title = models.CharField(max_length = 255)
     created_by = models.CharField(max_length = 255)

     def __unicode__(self):
       return self.id()

 class criteria(models.Model):
     details =   models.CharField(max_length = 255)
     headerid = models.ForeignKey(header)

     def __unicode__(self):
       return self.id()

 class options(models.Model):
     opt_details =   models.CharField(max_length = 255)
     headerid = models.ForeignKey(header)

     def __unicode__(self):
       return self.id()

そして私の見解では、私は持っています

           p= header(title=name,created_by=id)
           p.save()

これで、データはヘッダー テーブルに保存されます。私の質問は、ヘッダー テーブルで生成されたこの ID について、データを基準とオプション テーブルに保存する方法です..私に知らせてください..

ありがとう..

4

2 に答える 2

3

あなたが与えられた:

p= header(title=name,created_by=id)
p.save()

いまなら可能です:

c=criteria(details='some details', headerid=p)
c.save()
o=options(opt_details='more details', headerid=p)
o.save()

お役に立てれば。

于 2010-03-27T10:23:52.840 に答える
1

クエリ マネージャーを利用する<related>_setと、オブジェクトの作成と保存を別々の操作で行うよりも明確で短時間で済みます。

h = header.objects.create(title=name,created_by=id)
c = h.criteria_set.create(details='some details')
o = h.options_set.create(opt_details='more details')

そして、いくつかのオフトピック: クラス名を大文字から始めてください。これにより、コードが本当に読みやすくなります。

于 2010-03-27T10:52:45.790 に答える