问题:
我正在编写一些旨在在链接表中创建新记录的代码。链接表的主键是自动编号,其他两个字段是长度为 10 的 VARCHAR。
我遇到的问题是我似乎无法将 partID 放入表中。如果您查看 sql 输出,您可以清楚地看到它在表中写入了 None 和 u'1'(orderID)。所以这告诉我它接收到 orderID 就好了。您还可以看到,在将变量传递给新对象之前,我进行了打印以找出变量内部的内容。它有 3 个,这是正确的 partId。在创建新对象和写入表之间的某个地方,它传递了一个空值。
我尝试过强制转换,尝试过从数据库中提取 partID 的不同方法,等等,但我终其一生都无法弄清楚出了什么问题。
编码:
def updateOrderParts_view(request):
part = None
partToOrder = None
idnum = None
part = DBSession.execute(\
"SELECT partID "+\
"FROM tblParts "+\
"WHERE partName = " + "'" +request.POST['partName'] +"'").fetchone()
print "<---DEBUG--->"
print part['partID']
partToOrder = PartsByOrder(part['partID'], request.POST['orderID'])
DBSession.add(partToOrder)
return{}
终端输出:
<---DEBUG--->
3
2013-04-24 08:14:47,985 INFO [sqlalchemy.engine.base.Engine][Dummy-2] INSERT INTO "tblPartsByOrder" ("partID", "orderID") VALUES (?, ?)
2013-04-24 08:14:47,985 INFO [sqlalchemy.engine.base.Engine][Dummy-2] (None, u'1')
2013-04-24 08:14:47,986 INFO [sqlalchemy.engine.base.Engine][Dummy-2] COMMIT
我将不胜感激有关此问题的任何想法或意见
谢谢你的时间