1
diib 2013-02-03 21:30:43 +08:00
sqlite3 的数据类型都是基于text的。
|
2
diib 2013-02-03 21:35:49 +08:00
另外貌似这个帖子没写完?似乎读不懂……
|
4
yoyicue 2013-02-04 00:08:29 +08:00
为啥不用 sqlalchemy 和 wtforms 呢?
|
5
yoyicue 2013-02-04 00:10:20 +08:00
|
6
Hualin OP @yoyicue 不是选什么数据库的问题,问题出在从 template 获取 request.form['some_keyword'] 的 value 是 unicode, 然后再注入数据库的时候 数据类型的转换不是很智能。
flask 自己没有完整的数据库逻辑 不像 django 。至少我理解的是这样。 |
7
yoyicue 2013-02-04 00:12:25 +08:00
我在点击回复的瞬间 猫跳上键盘 敲了个 m,
|
9
yoyicue 2013-02-04 00:15:38 +08:00 1
|
10
Hualin OP @yoyicue 好吧 我觉得我需要解决燃眉之急。我还是找找 python unicide 数据类型 有没有比较智能的数据类型转换方法算了。 thx anyway
|
12
yegle 2013-02-04 00:28:27 +08:00 2
@Hualin
有一个通用的解决方案是,表只存一个field,把要存的数据保存成dict,json.dumps成字符串保存到数据库里 为了保证你的代码通用性(sqlite3不满足需求,需要用MySQL怎么办?),保证安全性(『手动拼接SQL是SQL注入万恶之源』),还是用ORM吧。 另外,如果觉得flask没有好用的数据库逻辑,你总是可以from django.db import models的 |
13
Hualin OP @yegle django 太“强大”了,我还玩不转。
我就是手动拼接sql 语句的 T.T 我在想我要不要把数据库里的东西全存成 string 类型,这样我对每个 field 的操作都是 用引号 wrap 一下。反正我也不用 sqlite 单独做什么就是存个东西而已。 今天才知道 orm ,,,还是后面再学学吧。 |
14
diib 2013-02-04 07:44:18 +08:00 via Android
不要直接拼sql,如果暂时不用orm,那么就把网页传回来的信息每一个都检查一遍,并转换成对应的数据类型,然后用参数化的方式构建sql语句并执行。虽然繁琐了些。。。
|