장고 고유 제한 조건이 salebook_saleman.user_id 실패 USER_ID 실패장고 고유 제한 조건은
model.py :
class Saleman(models.Model):
name = models.CharField(max_length=200)
password = models.CharField(max_length=200)
def __str__(self):
return self.name
class Book(models.Model):
owner = models.ForeignKey(Saleman)
book_name = models.CharField(max_length=200)
book_text = models.TextField(max_length=2000,blank=True)
price = models.IntegerField(default=0)
telephone = models.CharField(max_length=200)
#image = models.ImageField(upload_to='photos')
pub_date = models.DateTimeField('date published',default = timezone.now)
def __str__(self):
return self.book_name
view.py :
def user_register(request):
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
email = request.POST['email']
new_user = User.objects.create_user(username,email,password)
new_saleman = Saleman.objects.create(name=username,password=password)
if newsaleman is not None:
new_saleman.save()
if new_user is not None:
new_user.save()
context = {'Username':username}
return render(request,"salebook/index.html",context)
else:
context = {'error_message':'Register Fail'}
return render(request,"salebook/register.html",context)
def user_login(request):
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
context = {'Username':username}
return render(request,"salebook/index.html",context)
else:
context = {'error_message':'User is locked'}
return render(request,"salebook/login.html",context)
else:
context = {'error_message':'Null User or Wrong Password'}
return render(request,"salebook/login.html",context)
else:
return render_to_response('salebook/login.html')
별로 무슨 뜻인지 확실히 또는 무엇의 원인 그것. 쉬운 수정 방법이 있으면 알려주세요. 감사! 업데이트 : 처음에는
File "manage.py", line 22, in <module>
execute_from_command_line(sys.argv)
File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line 367, in execute_from_command_line
utility.execute()
File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line 359, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Python27\lib\site-packages\django\core\management\base.py", line 294, in run_from_argv
self.execute(*args, **cmd_options)
File "C:\Python27\lib\site-packages\django\core\management\base.py", line 345, in execute
output = self.handle(*args, **options)
File "C:\Python27\lib\site-packages\django\core\management\commands\migrate.py", line 204, in handle
fake_initial=fake_initial,
File "C:\Python27\lib\site-packages\django\db\migrations\executor.py", line 115, in migrate
state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
File "C:\Python27\lib\site-packages\django\db\migrations\executor.py", line 145, in _migrate_all_forwards
state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
File "C:\Python27\lib\site-packages\django\db\migrations\executor.py", line 244, in apply_migration
state = migration.apply(state, schema_editor)
File "C:\Python27\lib\site-packages\django\db\migrations\migration.py", line 129, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File "C:\Python27\lib\site-packages\django\db\migrations\operations\fields.py", line 84, in database_forwards
field,
File "C:\Python27\lib\site-packages\django\db\backends\sqlite3\schema.py", line 231, in add_field
self._remake_table(model, create_fields=[field])
File "C:\Python27\lib\site-packages\django\db\backends\sqlite3\schema.py", line 199, in _remake_table
self.quote_name(model._meta.db_table),
File "C:\Python27\lib\site-packages\django\db\backends\base\schema.py", line 112, in execute
cursor.execute(sql, params)
File "C:\Python27\lib\site-packages\django\db\backends\utils.py", line 79, in execute
return super(CursorDebugWrapper, self).execute(sql, params)
File "C:\Python27\lib\site-packages\django\db\backends\utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "C:\Python27\lib\site-packages\django\db\utils.py", line 94, in __exit__
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "C:\Python27\lib\site-packages\django\db\backends\utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "C:\Python27\lib\site-packages\django\db\backends\sqlite3\base.py", line 337, in execute
return Database.Cursor.execute(self, query, params)
django.db.utils.IntegrityError: UNIQUE constraint failed:salebook_saleman.user_id
내가 abstractUser를 사용하여 내 모델 saleman을 확장하려고, 나는 내 코드를 다시 happen.When이 오류는 여전히 alive.Sorry, 나도 몰라 : 오류는 내 코드는 어떻게 된거야.
당신이있어 오류를 게시하고 오류가 발생하면 뭘하려고했는지 설명해보십시오. – lucasnadalutti
쉬운 해결 방법은'User.objects.create_user (username, email, password)'를 시도하는 것입니다. 그러나 여기에서 쉬운 수정을 원하지 않는다고 생각하십시오. 너는 달려들 다른 많은 것들을 가지고있다. – e4c5
죄송합니다, 내 오류 – cz328317643