0
私のDjangoサイトでは、ユーザーの反応を保存しているので、ユーザーがボタンをクリックすると、作成された時間として保存され、ユーザーが2回目にクリックすると、終了時刻等々。ここは私のモデルです。時間差を保存するDjango
class UserStatus(models.Model):
STATUS_TYPES = (
('online', 'online'),
('offline', 'offline')
)
user = models.ForeignKey(User)
status_type = models.CharField(max_length=30, choices=STATUS_TYPES, default='online')
created_time = models.DateTimeField(auto_now_add=True)
finish_time = models.DateTimeField(blank=True, null=True)
time_diff = models.DateTimeField(blank=True, null=True)
created_timeとfinish時間の時間差を示すtime_diffを追加しました。シェルで例を試してみると、私は使用します。私はそれがエラーを与えたuser_status.save()
を書いたとき
user_status.created_time
datetime.datetime(2016, 3, 31, 12, 50, 21, tzinfo=<UTC>)
user_status.finish_time
datetime.datetime(2016, 3, 31, 12, 51, 37, 998593, tzinfo=<UTC>)
user_status.finish_time - user_status.created_time
datetime.timedelta(0, 76, 998593)
すべてがしかし、今までは罰金のようです。
line 93, in parse_datetime match = datetime_re.match(value) TypeError: expected string or buffer
なぜこのようなエラーが発生したのか分かりませんでした。
ありがとうございます。
私の問題を解決していただきありがとうございます。実際には私は "DurationField"を知らなかった:)とそれがパーサーの問題か何かがこのように思った:) – waterkinq