gpt4 book ai didi

python - 无法弄清楚如何调试这个: ValueError: invalid literal for int() with base 10: '

转载 作者:太空宇宙 更新时间:2023-11-03 16:51:57 25 4
gpt4 key购买 nike

我刚刚遇到了这个错误,我尝试在论坛上类似错误的帮助下进行调试,但尚未解决任何问题。我想它来 self 的模型,涉及模型字段及其返回方式。特别是 Booking 和 Room 模型下的 Book_id 和 Room_Number 。任何帮助表示赞赏。注意:我更改了模型字段,每当我运行 manage.py migrate 时都会弹出值错误

模型.py

class Room(models.Model):
Hostel = models.ForeignKey(List)
Room_Number = models.CharField(max_length=3, default="", primary_key=True)
Total_rooms = models.IntegerField(blank=True)
Price_single = models.IntegerField(blank=True)
Price_double = models.IntegerField(blank=True)

def __str__(self):
return self.Room_Number


class Booking(models.Model):
Book_id = models.IntegerField(default="")
Hostel = models.ForeignKey(List)
Room_Number = models.ForeignKey(Room)
Room_capacity = models.CharField(max_length=1, choices=[('S', 'Single'), ('D', 'Double')], default="")
Booked_by = models.ForeignKey(Student, default="")
Booked_on = models.DateTimeField(auto_now_add=True)

def __str__(self):
return "%s, booked a '%s' room in '%s' '%s' at '%s'" % (
self.Booked_by, self.Room_capacity, self.Hostel, self.Room_Number, self.Booked_on)

在控制台中显示:

Running migrations:
Rendering model states... DONE
Applying Gyobera.0011_booking_book_id...Traceback (most recent call last):
File "C:\Program Files (x86)\JetBrains\PyCharm 4.5.2\helpers\pycharm\django_manage.py", line 41, in <module>
run_module(manage_file, None, '__main__', True)
File "C:\Python34\lib\runpy.py", line 182, in run_module
return _run_module_code(code, init_globals, run_name, mod_spec)
File "C:\Python34\lib\runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "C:\Python34\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:/Users/Scott Businge/Ewange\manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "C:\Python34\lib\site-packages\django\core\management\__init__.py", line 338, in execute_from_command_line
utility.execute()
File "C:\Python34\lib\site-packages\django\core\management\__init__.py", line 330, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Python34\lib\site-packages\django\core\management\base.py", line 390, in run_from_argv
self.execute(*args, **cmd_options)
File "C:\Python34\lib\site-packages\django\core\management\base.py", line 441, in execute
output = self.handle(*args, **options)
File "C:\Python34\lib\site-packages\django\core\management\commands\migrate.py", line 221, in handle
executor.migrate(targets, plan, fake=fake, fake_initial=fake_initial)
File "C:\Python34\lib\site-packages\django\db\migrations\executor.py", line 110, in migrate
self.apply_migration(states[migration], migration, fake=fake, fake_initial=fake_initial)
File "C:\Python34\lib\site-packages\django\db\migrations\executor.py", line 147, in apply_migration
state = migration.apply(state, schema_editor)
File "C:\Python34\lib\site-packages\django\db\migrations\migration.py", line 115, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File "C:\Python34\lib\site-packages\django\db\migrations\operations\fields.py", line 62, in database_forwards
field,
File "C:\Python34\lib\site-packages\django\db\backends\sqlite3\schema.py", line 179, in add_field
self._remake_table(model, create_fields=[field])
File "C:\Python34\lib\site-packages\django\db\backends\sqlite3\schema.py", line 77, in _remake_table
self.effective_default(field)
File "C:\Python34\lib\site-packages\django\db\backends\base\schema.py", line 211, in effective_default
default = field.get_db_prep_save(default, self.connection)
File "C:\Python34\lib\site-packages\django\db\models\fields\__init__.py", line 710, in get_db_prep_save
prepared=False)
File "C:\Python34\lib\site-packages\django\db\models\fields\__init__.py", line 702, in get_db_prep_value
value = self.get_prep_value(value)
File "C:\Python34\lib\site-packages\django\db\models\fields\__init__.py", line 1868, in get_prep_value
return int(value)
ValueError: invalid literal for int() with base 10: ''

最佳答案

您的 bookid 默认为空字符串,

Book_id = models.IntegerField(default="")

您可能想要允许空值或将默认值设置为数字

Book_id = models.IntegerField(default=1)

关于python - 无法弄清楚如何调试这个: ValueError: invalid literal for int() with base 10: ',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35766725/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com