django foreignkey(utilisateur) dans des modèles
J'ai lu les docs et ce post... Django - Clé Étrangère de l'Utilisateur modèle
J'ai suivi ce qu'il a dit et je ne peux toujours pas le faire fonctionner. Lorsque j'essaie de lancer les migrations j'obtiens cette erreur dans le traceback...
django.db.utils.ProgrammingError: column "author_id" cannot be cast automatically to type integer
HINT: You might need to specify "USING author_id::integer".
Je ne sais pas comment faire pour aller sur la fixation de cette erreur.
from django.db import models
from django.contrib.auth.models import User
# Create your models here.
class BlogCategory(models.Model):
'''model for categories'''
title = models.CharField(max_length=30)
description = models.CharField(max_length=100)
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()
Êtes-vous à l'aide de la valeur par défaut de l'utilisateur modèle? Veuillez inclure le fichier de migration
OriginalL'auteur deltaskelta | 2015-12-16
Vous devez vous connecter pour publier un commentaire.
Je ne connais pas les "paramètres".AUTH_USER_MODEL" approche, mais une approche bien connue et couramment utilisée est le "Auth.Modèle utilisateur. Quelque chose comme ceci sur votre fin.
Peut-être que vous avez défini une méta-classe
Fournir vous n'avez pas remplacé le
AUTH_USER_MODEL
paramètre, le modèle que vous faites allusion à l' est la valeur par défautdocs.djangoproject.com/en/1.9/topics/auth/customizing/..., comme ce que le lien dit "AUTH_USER_MODEL" devrait être le modèle de l'utilisateur d'une application donnée, avez-vous fait de votre côté? Ou vous voudrez peut-être fournir d'autres détails comme la valeur de votre AUTH_USER_MODEL
Je n'ai pas défini un modèle d'utilisateur pour la classe. N'est-il pas quelque moyen d'en faire une clé étrangère pour tous les utilisateurs dans ma base de données?
OriginalL'auteur Dean Christian Armada
De ne pas utiliser le
User
modèle directement.De la documentation
Exemple:
AUTH_USER_MODEL
paramètre danssettings.py
. La Documentation dit que c'est pas nécessaire -This method will return the currently active user model – the custom user model if one is specified, or User otherwise.
Le documentation états: "Django permet de remplacer la valeur par défaut de l'utilisateur modèle en fournissant une valeur pour le AUTH_USER_MODEL paramètre". En gros: si - vous de fournir une coutume
User
modèle que vous fournir lesAUTH_USER_MODEL
réglage.OriginalL'auteur Andrew E
Si vous avez créé un Utilisateur personnalisée modèle, vous pouvez utiliser
setting.AUTH_USER_MODEL
, si pas, vous pouvez aller de l'avant une utilisationUser model
Le référencement de Django modèle Utilisateur
OriginalL'auteur Jermaine
la colonne "author_id" n'existe pas, regarde comme c'est le même problème ici : Django suffixe champ ForeignKey avec _id , donc pour éviter ce traceback vous pouvez utiliser :
OriginalL'auteur Sérgio