【问题标题】:"AttributeError: 'str' object has no attribute 'cursor"“AttributeError:‘str’对象没有‘cursor’属性”
【发布时间】:2019-11-15 09:44:11
【问题描述】:
connection = request.form.get('connection_type_id')
tariff = request.form.get('tariff_id')

house = request.form.get('house_type_id')

status = 1

mySql_insert_query = "INSERT INTO tbl_consumer(consumer_no, connection_type_id, tariff_id, house_type_id, status) VALUES (%s,%s,%s,%s,%s)"

cursor = connection.cursor()

result = cursor.execute(mySql_insert_query,(consumer, connection, tariff, house, status))

connection.commit()

print("Record inserted successfully into Laptop table")

cursor.close()

return redirect(url_for('admin_add_consumer'))

【问题讨论】:

  • 请始终发布错误的完整回溯,以便清楚到底哪一行引发了错误。
  • 尝试用相关的代码块和堆栈跟踪清楚地列出您的问题。
  • 从代码来看,connection是str的一种。这就是在连接上调用游标函数时出错的原因。

标签: mysql python-3.x flask


【解决方案1】:

connection = request.form.get('connection_type_id') 这应该是 connection_type_id = ....? request.form 默认情况下ImmutableMultiDict 带有表单数据,您的连接变量设置为名称为connection_type_id 的表单元素,这就是您收到错误的原因。我假设连接是来自全局空间的 mysql 连接对象。

请更改为connection_type_id = request.form.get('connection_type_id'),它也是引用。

【讨论】:

    猜你喜欢
    • 2018-09-23
    • 2022-11-13
    • 1970-01-01
    • 1970-01-01
    • 2021-09-23
    • 1970-01-01
    • 2018-09-10
    • 2021-10-04
    • 2019-12-02
    相关资源
    最近更新 更多