简体   繁体   English

当我在models.py中的python django中运行此命令python manage.py makemigrations博客时出错

[英]Error when I run this command python manage.py makemigrations blog in python django in models.py

I get an error , when I run this command python manage.py makemigrations blog in python django in models.py 当我在models.py中的python django中运行此命令python manage.py makemigrations blog收到错误

from django.db import models
from django.utils import timezone

class Post(models.Model):
    author = models.ForeignKey('auth.User')
    title = models.CharField(max_length=200)
    text = models.TextField()
    created_date = models.DateTimeField(
            default=timezone.now)
    published_date = models.DateTimeField(
            blank=True, null=True)

    def publish(self):
        self.published_date = timezone.now()
        self.save()

    def __str__(self):
        return self.title
    class Comment(models.Model):
    post = models.ForeignKey('blog.Post', related_name='comments')
    author = models.CharField(max_length=200)
    text = models.TextField()
    created_date = models.DateTimeField(default=timezone.now)
    approved_comment = models.BooleanField(default=False)

    def approve(self):
        self.approved_comment = True
        self.save()`enter code here`

    def __str__(self):
        return self.text

There a couple of issues with your code: 您的代码有几个问题:

  • Indentation 缩进
  • User class import 用户类导入
  • use Blog instead of blog.Blog 使用Blog而不是blog.Blog

a quick fix: 快速修复:

from django.db import models
from django.utils import timezone
from django.contrib.auth.models import User


class Post(models.Model):
    author = models.ForeignKey(User)
    title = models.CharField(max_length=200)
    text = models.TextField()
    created_date = models.DateTimeField(
        default=timezone.now)
    published_date = models.DateTimeField(
        blank=True, null=True)

    def publish(self):
        self.published_date = timezone.now()
        self.save()

    def __str__(self):
        return self.title


class Comment(models.Model):
    post = models.ForeignKey(Post, related_name='comments')
    author = models.CharField(max_length=200)
    text = models.TextField()
    created_date = models.DateTimeField(default=timezone.now)
    approved_comment = models.BooleanField(default=False)

    def approve(self):
        self.approved_comment = True
        self.save()`enter code here`

    def __str__(self):
        return self.text

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 “python manage.py makemigrations”在 Django 中创建 models.py 后出现回溯错误 - “python manage.py makemigrations” Traceback errors after creating models.py in Django manage.py (python manage.py makemigrations) 错误 - manage.py (python manage.py makemigrations) Error 当我运行 python manage.py makemigrations 时出现此错误 - I have got this error when i run python manage.py makemigrations manage.py makemigrations 忽略 models.py - manage.py makemigrations ignores models.py python manage.py makemigrations在升级Django时给出错误 - python manage.py makemigrations giving error on upgrading django django和python ./manage.py makemigrations执行错误 - django and python ./manage.py makemigrations execution error 我无法在 django VSC 中使用命令“python manage.py makemigrations” - I can't use the command ' python manage.py makemigrations' in django VSC 当models.py中有3个自定义模型时,Django makemigrations错误 - Django makemigrations error when there are 3 custom model in a models.py 当我运行 >> python manage.py sqlmigrate travello 0001 命令时,我正在处理 django 项目,它显示以下错误帮助 - I am working on django project when i run >> python manage.py sqlmigrate travello 0001 command it show the following error help on this Django 1.7 python manage.py makemigrations轮询SyntaxError - Django 1.7 python manage.py makemigrations polls SyntaxError
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM