错误代码“NameError'User'未定义'我正在尝试填充数据库

时间:2018-04-11 11:14:04

标签: python-3.x django-models

1。错误代码“NameError'User'未定义

import random
from datetime import datetime
from auction.models import Auction, Bid
from django.contrib.auth import get_user_model
User = get_user_model()


def populate_db():
   entries = 50
   for i in range(1, entries+1):
      username = 'user_%d' % i
      password = username
      email = '%s@yaas.com' % username
      print ("Creating new user username=%s, email=%s, password=%s" % (username, email, password))

      new_user = User.objects.create_user(username=username, email=email, password=password)
      year = random.randint(1975, 2025)
      month = random.randint(1, 12)
      day = random.randint(1, 28)
      .....     
      .....
      .....
 populate_db()

任何建议?我使用django 2.0.4。 有没有办法检查是否导入了用户身份验证模型?如果是,如果未正确导入,我该怎么办?

1 个答案:

答案 0 :(得分:0)

您可以直接使用User.objects.create()作为

User.objects.create(username=username, email=email, password=password)

而不是写create_user()

要检查get_user_model是否已正确映射,您可以按照以下步骤操作:

打开管理shell

python manage.py shell

运行以下命令:

from django.contrib.auth import get_user_model
User = get_user_model()

现在,您可以通过执行get,filter,create等查询来检查是否可以与模型进行交互。