Leo*_*Neo 5 django django-authentication python-3.x django-rest-framework
我有一个带有 CustomUser 的 Django 应用程序。我的模型看起来像
class CustomUser(AbstractBaseUser):
def get_short_name(self):
pass
def get_full_name(self):
pass
firstName = models.CharField(max_length=300)
middleName = models.CharField(max_length=300, blank=True)
lastName = models.CharField(max_length=300, blank=True)
username = models.CharField(unique=True, max_length=50)
businessName = models.CharField(max_length=500, default=None)
mobileNumber = models.CharField(max_length=20)
contactNumber = models.CharField(max_length=20)
addressLine1 = models.CharField(max_length=300)
addressLine2 = models.CharField(max_length=300)
city = models.CharField(max_length=300)
state = models.CharField(max_length=300)
role = models.CharField(max_length=20)
email_id = models.CharField(max_length=300, unique=True)
aadharNumber = models.BigIntegerField(default=0)
panNumber = models.CharField(max_length=20, default=None)
registrationDate = models.BigIntegerField(default=0)
bankDetail = models.ManyToManyField('BankDetail', related_name="bankDetail")
dateCreated = models.DateTimeField(auto_now_add=True)
dateModified = models.DateTimeField(auto_now=True)
objects = AccountManager()
USERNAME_FIELD = 'email_id'
REQUIRED_FIELDS = ['username']
Run Code Online (Sandbox Code Playgroud)
我正在按照此博客https://afropolymath.svbtle.com/authentication-using-django-rest-framework 中的示例来实现用户身份验证。
运行时出现以下错误makemigrations
我确实在 StackOverflow 上查看了一些解决方案,但这些解决方案似乎并没有解决我的问题。
Django 错误消息“向定义中添加一个related_name 参数”
迁移中自动生成的 _ptr 字段上的 AlterField 导致 FieldError
Traceback (most recent call last):
File "manage.py", line 22, in <module>
execute_from_command_line(sys.argv)
File "/usr/local/lib/python3.6/site-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python3.6/site-packages/django/core/management/__init__.py", line 356, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python3.6/site-packages/django/core/management/base.py", line 283, in run_from_argv
self.execute(*args, **cmd_options)
File "/usr/local/lib/python3.6/site-packages/django/core/management/base.py", line 330, in execute
output = self.handle(*args, **options)
File "/usr/local/lib/python3.6/site-packages/django/core/management/commands/makemigrations.py", line 177, in handle
migration_name=self.migration_name,
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/autodetector.py", line 47, in changes
changes = self._detect_changes(convert_apps, graph)
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/autodetector.py", line 133, in _detect_changes
self.old_apps = self.from_state.concrete_apps
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/state.py", line 222, in concrete_apps
self.apps = StateApps(self.real_apps, self.models, ignore_swappable=True)
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/state.py", line 288, in __init__
self.render_multiple(list(models.values()) + self.real_models)
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/state.py", line 323, in render_multiple
model.render(self)
File "/usr/local/lib/python3.6/site-packages/django/db/migrations/state.py", line 626, in render
body,
File "/usr/local/lib/python3.6/site-packages/django/db/models/base.py", line 259, in __new__
base.__name__,
django.core.exceptions.FieldError: Auto-generated field 'user_ptr' in class 'CustomUser' for parent_link to base class 'User' clashes with declared field of the same name.
customer ID<django.db.models.fields.related_descriptors.ForwardManyToOneDescriptor object at 0x106341a58>
Run Code Online (Sandbox Code Playgroud)
我需要做什么才能消除此错误并继续成功迁移?
删除您的迁移。 然后运行 makemigrations 命令。
| 归档时间: |
|
| 查看次数: |
2146 次 |
| 最近记录: |