框架设计问题

时间:2010-12-05 18:24:36

标签: python sqlite

提交最初来自网页的数据时,有时必须将数据转换为适合后端数据库的数据类型或格式。例如,'dd / mm / yyyy'格式的日期需要转换为Python日期对象或'yyyy-mm-dd'才能存储在SQLite日期列中(SQLite将接受'dd / mm' / yyyy',但这可能会在检索数据时导致问题。)

问题 - 数据应在何时转换?     a)作为通用web_page_save()方法的一部分(在数据验证之后,但在调用row.table_update()方法之前)。     b)作为row.table_update()的一部分(从基于Web或非基于Web的应用程序调用的数据对象方法,并包括在执行UPDATE命令之前构造字段值参数列表)。

换句话说,从框架的角度来看,数据转换是属于页面对象处理还是数据对象处理?

任何意见都将不胜感激。

艾伦

2 个答案:

答案 0 :(得分:2)

我认为它属于验证。您需要一个日期,但网页只输入字符串,因此验证者需要检查值是否转换为日期,并从应用程序的那一点开始处理它就像日期一样。

答案 1 :(得分:1)

我可能错了,但我认为这个问题没有明确答案。它取决于您的框架提供的“语言”级别。例如,如果框架的其他部分接受非规范形式的数据,然后将其转换为内部规范形式,则在这种情况下,值得支持一些预期的输入日期格式。

我总是喜欢构建严格的框架并在前端转换数据。