TurboGears开发笔记 (1)

1. 使用MySQL数据库

1.1 使用UTF-8字符集

sqlobject.dburi="mysql://root:@localhost:3306/dbname?sqlobject_encoding=utf-8&read_default_file=my.cnf"

同时,my.cnf里在client一节加入 default-character-set = utf8

1.2 使用InnoDB类型的表
修改my.cnf,mysqld一节加入 default-storage-engine=INNODB

1.3 自身外键关联
使用InnoDB类型的表,tg-admin sql drop 时会遇到由于外键约束而无法删除的问题,可以改用MyISAM类型的表。tg-admin sql create时会有警告:

Warning: a circular reference was detected in the model. Unable to sort the classes by dependency: they will be treated in alphabetic order. This may or may not work depending on your database backend. The error was:
Found a circular reference: ......

2. SQLObject

2.1 MultipleJoin最好指定joinColumn

3. Kid模板

3.1 用defined(varname) 可以判断一个变量是否存在于模板中,value_of则可以指定变量不存在时的默认值

3.2 results.count()可以得到查询结果集的大小

3.3 根据条件输出不同的内容 ${condition and 'a' or 'b'}
比如交替表格中行的背景色

...

在select的option标签里输入selected属性

......

诺基亚开源Hildon Input Method Framework

今天刚看到的消息,诺基亚将Hildon Input Method Framework开源,包括三部分:

  • The container UI and plugin system (hildon-input-method, LGPL).
  • The glue to GTK+ (hildon-input-method-framework, LGPL).
  • One plugin example (BSD).

详情见 http://maemo.org/news/announcements/view/1189194936.html

代码在这里: http://live.gnome.org/Hildon/HildonInputMethod/Availability

还没有仔细研究,不清楚对MaemoCJK项目会有什么影响。