-15đź‘Ť
I do not know the “settings.AUTH_USER_MODEL” approach but a well-known approach and commonly used is the “Auth.User” model. Something like this on your end.
from django.contrib.auth.models import User
class BlogPost(models.Model):
'''a model for a blog post'''
author = models.ForeignKey(User)
date = models.DateField()
title = models.CharField(max_length=100)
post = models.TextField()
170đź‘Ť
Don’t use the User
model directly.
From the documentation
Instead of referring to
User
directly, you should reference the user
model usingdjango.contrib.auth.get_user_model()
When you define a foreign key or many-to-many relations to the user model, you should specify the custom model using the
AUTH_USER_MODEL
setting.
Example:
from django.conf import settings
from django.db import models
class Article(models.Model):
author = models.ForeignKey(
settings.AUTH_USER_MODEL,
on_delete=models.CASCADE,
)
- [Django]-Workflow frameworks for Django
- [Django]-How do I run tests for all my Django apps only?
- [Django]-How to add url parameters to Django template url tag?
4đź‘Ť
If you created a custom User model, you would use setting.AUTH_USER_MODEL
, if not you can go ahead an use User model
- [Django]-What does this "-" in jinja2 template engine do?
- [Django]-Is virtualenv recommended for django production server?
- [Django]-Is it possible to generate django models from the database?
0đź‘Ť
the column “author_id” doesn’t exist, looks like is the same problem from here : Django suffix ForeignKey field with _id , so to avoid this traceback you may use :
author = models.ForeignKey(User, db_column="user")
- [Django]-In Django – Model Inheritance – Does it allow you to override a parent model's attribute?
- [Django]-Create Django model or update if exists
- [Django]-Django: TemplateSyntaxError: Could not parse the remainder