エラー: 1)user.Login.password:(fields.E304) 'Login.username'の逆引きアクセサで 'Login.password'の逆アクセスが矛盾します。 2)user.Login.username:(fields.E304) 'Login.username'のリバースアクセサが 'Login.password'のリバースアクセサと衝突します。Djangoで逆アクセサークラッシュが発生する
models.py
from django.db import models
from django.core.urlresolvers import reverse
class User(models.Model):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
username = models.CharField(max_length=100)
password = models.CharField(max_length=50)
confirm_password = models.CharField(max_length=50)
email = models.EmailField(max_length=100)
position = models.CharField(max_length=50)
def get_absolute_url(self):
return reverse('user:register', kwargs={'pk': self.pk})
class Login(models.Model):
username = models.ForeignKey(User, on_delete=models.CASCADE)
password = models.ForeignKey(User, on_delete=models.CASCADE)
def __str__(self):
login = {'username': self.username, 'password': self.password}
return login
ユーザモデルを作成する必要はありません.djangoはデフォルトで 'django.contrib.auth.models'にあります – arcegk
ユーザとfkの関係を持つパスワードとユーザ名の両方の理由は何ですか? –
この構造が理にかなっていても、それは絶対にしていません。 DjangoのUserモデルを使用します。自分で作成する必要がある場合は、AbstractBaseUserから継承します。 –