私は、クライアントがデータベースにログインして手動でデータ入力を行うプロジェクトを持っています。はい、直接アクセス、理由を聞かないでください!Djangoと直接データベースの操作
テーブルに変更を適用すると、作成および変更されたフィールドが現在の日付と時刻でオートコレクトされます。
私はMySQLを使用しています。
私が作成したフィールドには、現在のタイムスタンプを自動完了されていないデータベースにデータを追加するときだから私は..ほど
class Atlantis(models.Model):
description = models.TextField('description', max_length=200 , default = None,null=True,blank=True)
amount = models.IntegerField('Amount', default=0)
quantity = models.IntegerField('Quantity', default=0)
inserted = models.BooleanField(default=False)
update_chk = models.BooleanField(default=False)
created = models.DateTimeField(auto_now=True,auto_now_add=True)
modified = models.DateTimeField(auto_now=True)
def save(self, *args, **kwargs):
''' On save, update timestamps '''
if not self.id:
self.created = timezone.now()
self.modified = timezone.now()
return super(Atlantis, self).save(*args, **kwargs)
を私のモデルを作成しました。
データベースのテーブルを変更し、作成されたフィールドのデフォルト設定をCURRENT_TIMESTAMPに変更しようとしましたが、エラーがありました。
だから私は尋ねている、私は何をやってみることができますか?
データを追加すると、ormなしで直接行うことを意味しますか?エラーは何ですか? – Sayse
ユーザはデータベーステーブルに直接データを入力する必要があります。 エラー:ERROR 1067: 'created'のデフォルト値が無効です。 私はCURRENT_TIMESTAMPを入れようとしました –
もしそれがdbに直接行っているのであれば、djangoは何もできません。 – Sayse