Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Django datetime fromisoformat: argument must be str

09:33 26-02-2022 2.348 lượt xem 0 bình luận

Mình bị lỗi này khi chạy server, nghĩ phần nhiều chắc liên quan đến datetimefield của models.py. Ai sửa lại giúp mình được không?

models.py

class Post(models.Model):
    author = models.ForeignKey("auth.User", on_delete=models.CASCADE)
    title = models.CharField(malength=200)
    text = models.TextField()
    create_date = models.DateTimeField(default=timezone.now)
    published_date = models.DateTimeField(blank=True, null=True)
    
    def get_absolute_url(self):
        return reverse("post_detail", kwargs={"pk": self.pk})
    
    def publish(self):
        self.published_date = timezone.now
        self.save()

    def approve_comments(self):
        return self.comments.filter(approve_comment=True)

    def __str__(self):
        return self.title

class Comment(models.Model):
    post = models.ForeignKey('mblog.Post', related_name='comments', on_delete=models.CASCADE)
    author = models.CharField(malength=100)
    text = models.TextField()
    create_date = models.DateTimeField(default=timezone.now)
    approve_comment = models.BooleanField(default=False)

    def approve(self):
        self.approve_comment = True
        self.save()
        
    def get_absolute_url(self):
        return reverse("post_detail", kwargs={"pk": self.pk})

    def __str__(self):
        return self.text

Với cả có cách nào hay hơn thay vì set defautl = timezone.now không?

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập

Câu hỏi mới nhất