私たちがやっているDjangoプロジェクトとpostgresqlデータベースには小さな問題があります。Django AutoFieldが新しいprimary_keyを返さない
私たちが取り組んでいるプロジェクトは、PHPサイトからdjangoサイトへのサイト/ db変換です。そこで、PHPをバックエンドからモデルを生成するためにinspect dbを使用しました。
それは私達にこれを与え、我々はPRIMARY_KEYとユニークがTrue等しい追加:
class Company(models.Model):
companyid = models.IntegerField(primary_key=True,unique=True)
...
...
我々は最終的には新しい会社のエントリを保存するようになった時に働いているように見えなかったこと。これは、非NULL制約エラーを返しますので、私たちは以下のようなのAutoFieldに移行:
class Company(models.Model):
companyid = models.AutoField(primary_key=True)
...
...
これは、当社のエントリー罰金を節約できますが、問題は、我々は
result = form.save()
を行うときに私たちができないですデータベースに新しく与えられた主キーを取得するには(まだ我々はそれがデータベースに適切な企業IDを付与されていることがわかります
result.pk or result.companyid
を行う。
私たちは何が起こっているのか迷っています。どんなアイデアや答えも大変ありがとうございます。