升级Play1.2后,原来的waitFor方法不建议使用了,等待任务这块代码似乎更简洁了,用await基本能搞定大部分的事,具体参考:
升级Play1.2后,可能会遇到某些字如“公”、“者”等在页面上显示为问号的中文乱码问题。
- 这个已经在最新的代码中修改了,急用的话,可以git下载最新的master版本编译后使用。目前1.2.1版本已经修复了这个问题。
- 同时在windows系统中的cmd窗口里,控制台输出的中文也可能是乱码,这个可能是因为我们使用的Windows的cmd默认编码不是UTF-8,而是GBK吧,还没找到好办法解决。
当在Windows开发后转到Linux下时会出现的问题:
- MySQL表名字段大小写问题的解决办法:
1. linux的服务器上,修改/etc/my.cnf,在[mysqld]段加上: lower_case_table_names=1 2. 再运行建表sql脚本。 3. 这样将始终采用小写的表名。当这个值设为0时则为大小写敏感。
开发或产品的日志log如何设置?
Play的模板机制
- 在Controller中尽量使用 render()自动判断, 系统会根据请求的不同来返回不同的格式,有 *.html,有 *.json,甚至还可以是 *.xml,只需在相应的view目录中写好相应的*.html、*.json、*.xml 同名模板。
如何重载一个CRUD的界面?
Play官方网站访问不了了怎么办?
如何自定义一个Check验证的注释功能?
如何在项目全局使用一个字串或设置?
- 在application.conf文件中添加一项,如:global.set01=SET01;
- 在java程序中使用:Play.configuration.getProperty("global.set01") 即可取得。
如何在类中进行数据操作、事务等?
如何使用自定义的类型或字段作为某个类的主键?
- 参见:The play.db.jpa.Model class automatically provides an autogenerated Long id field. We think that it’s generally a good idea to keep an auto-generated Long id as primary key for JPA models (the technical primary key) and manage your functional primary key using another field.
- 官方文档中说明使用Play提供的自动自增长的长整数就可以了,所以建议不要自己维护主键,如果因业务需要自己维护主键,也可以保留这个,另外处理自己的主键程序逻辑。
界面上的几种表示方法区别:
- #{script 'jquery.js'} 模板或Tags,可自定义。
- ${client?.name} 表达式,来源于Groovy和Grails的语法。
- @{Clients.index()} 生成Action链接,@@{Clients.index()}生成的是绝对地址。
- &{'clientName', client.name} i18n的Messages语言文本转换。
- %{…}% 直接执行的代码,类似ASP里的<%...%>
- *{…}* 服务器端注释,类似ASP里<%'.....%>
- 详细说明见:http://www./documentation/1.1/templates
建Model时可用的注释声明:
- 设置某个字段不存入数据表:
@Transient public String info;
如何显示某个类的列表数据在页面上:
- 参见:http://www./documentation/1.1/guide9
public static void index() { List<Post> posts = Post.find("author.email", Security.connected()).fetch(); render(posts); } 然后在模板页面上这样列出: #{list items:posts, as:'post'} <p class="post ${post_parity}"> <a href="http://wind13.blog.163.com/blog/#">${post.title}</a> </p> #{/list}
如何将Play运行在Windows Server上,当做一个服务启动?
- 在项目目录下运行play run 即可。
- 下载个srvany.zip 包,里面三个文件:instsrv.exe,srvany.exe,srvany.wri
- srvany.wri 文件里是英文的使用说明。
- 拷贝instsrv.exe, srvany.exe 文件到 C:\tools\srvany.exe
- 运行 instsrv MyService c:\tools\srvany.exe
- 在注册表里HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MyService: 添加一个 'Parameters' 的Key。
- 在这个键值下面添加:Application: REG_SZ: D:\your\play\play.bat start E:\your\play\projectpath\
- 详细创建Windows下服务的方法参见:http://www./display.cfm?ttid=197
相关文章
同时在windows系统中的cmd窗口里,控制台输出的中文也可能是乱码,这个可能是因为我们使用的Windows的cmd默认编码不是UTF-8,而是GBK吧,还没找到好办法解决。同时在windows系统中的cmd窗口里,控制台输出的中文也可能是乱码,这个可能是因为我们使用的Windows的cmd默认编码不是UTF-8,而是GBK吧,还没找到好办法解决。
注释掉 application.py 的241行,在Run的时候加上 -Dfile.encoding=GBK
|