본문 바로가기
웹개발/잡다한

[django 에러] Reverse accessor for 'Post.author' clashes with reverse accessor for 'Post.like'. HINT: Add or change a related_name argument to the definition for 'Post.author' or 'Post.like'.

by julysein 2020. 9. 15.
728x90
board.Post.author: (fields.E304) Reverse accessor for 'Post.author' clashes with reverse accessor for 'Post.like'.
        HINT: Add or change a related_name argument to the definition for 'Post.author' or 'Post.like'.
board.Post.like: (fields.E304) Reverse accessor for 'Post.like' clashes with reverse accessor for 'Post.author'.
        HINT: Add or change a related_name argument to the definition for 'Post.like' or 'Post.author'.

 

class Post(models.Model):
    author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    like = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)

 다음과 같은 코드를 작성했는데 맨 위와 같은 오류가 났다. 한 class 안에서 두 개 이상이 같은 외래키(foreignkey)를 참조했을 때 오류가 생긴다고 한다. 그래서 like를 새로운 하나의 함수로 만들어 주고 post 와 user을 연결하는 식으로 바꾸었다.

 

class Like(models.Model):
    Post = models.ForeignKey('Post', on_delete=models.CASCADE)
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete = models.CASCADE)
728x90