django - django1.11 无法与 oracle11g 连接
问题描述
我无法在 linux 中迁移项目。Dependecy:cx-Oracle==7.2.0 Django==1.11,oracle11g 和 python3。我正在尝试连接服务器数据库。
我self.cursor.numbersAsStrings = True
从/work/sunlife_env/lib/python3.6/site-packages/django/db/backends/oracle/base.py中删除了一行来解决此错误:
AttributeError:“cx_Oracle.Cursor”对象没有属性“numbersAsStrings”
但是现在,在 python manage.py migrate 之后,我收到以下错误。
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial...Traceback (most recent call last):
File "manage.py", line 22, in <module>
execute_from_command_line(sys.argv)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/core/management/__init__.py", line 363, in execute_from_command_line
utility.execute()
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/core/management/__init__.py", line 355, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/core/management/base.py", line 283, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/core/management/base.py", line 330, in execute
output = self.handle(*args, **options)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/core/management/commands/migrate.py", line 204, in handle
fake_initial=fake_initial,
File "/home/arima/work/sunlife_env/lib/python3.6/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 "/home/arima/work/sunlife_env/lib/python3.6/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 "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/migrations/executor.py", line 250, in apply_migration
self.recorder.record_applied(migration.app_label, migration.name)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/migrations/recorder.py", line 73, in record_applied
self.migration_qs.create(app=app, name=name)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/models/query.py", line 393, in create
obj.save(force_insert=True, using=self.db)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/models/base.py", line 806, in save
force_update=force_update, update_fields=update_fields)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/models/base.py", line 836, in save_base
updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/models/base.py", line 922, in _save_table
result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/models/base.py", line 961, in _do_insert
using=using, raw=raw)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/models/manager.py", line 85, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/models/query.py", line 1060, in _insert
return query.get_compiler(using=using).execute_sql(return_id)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/models/sql/compiler.py", line 1106, in execute_sql
return self.connection.ops.fetch_returned_insert_id(cursor)
File "/home/arima/work/sunlife_env/lib/python3.6/site-packages/django/db/backends/oracle/operations.py", line 245, in fetch_returned_insert_id
return int(cursor._insert_id_var.getvalue())
TypeError: int() argument must be a string, a bytes-like object or a number, not 'list'
我需要帮助将我的数据库连接到 django 项目。
解决方案
推荐阅读
- python - 为什么我的图不是二分的,以为我使用相应的 networkx 函数将它们创建为二分的?
- coq - Coq:活页夹下的参数重写
- codeigniter - 使用 Codeigniter 中的 render_page 在 URL 中传递参数
- node.js - Async/Await Promise 实现执行单个 S3 PutObject 调用两次 - 为什么?
- arrays - 通过 sed 将文本附加到脚本中
- java - 在 GET 方法中发送请求正文不起作用
- python - 使用 sum 方法得到 1 到 1000 之间奇数的平方和
- javascript - 如何在 D3.js 的图表下添加“源”标题和小徽标图像?
- google-sheets - 在 Google 表格中查找单词并关联到某个值
- python-3.x - 用子类的类型初始化父类中的对象