用ROR做了一个很小的报名系统.
系统环境写道
ruby 1.8.6 (2007-09-24 patchlevel 111) [i486-linux]
Rails 2.1.0
Rails 2.1.0
写道
1. 控制器的重名问题
,需要注意和controller已有的方法名字冲突
2. 版本不向前兼容
3. 虽然在开发模式下,不过新添加一个controller的时候仍然需要重启服务器
4. 分页的成了一个插件 will_paginate
5. 数据库设计弄巧成拙(不需要将结构拆分的很细,从一定程度上会影响性能.特别是跨表查询,建议用空间换时间)
6. 利用过滤器验证时候的那个正则表达的头尾问题 /^........$/
7. 需要注意正则表达式终端特殊语意转义符号
8.ActionController::InvalidAuthenticityToken 异常一般出现出现在手写的html form 标签和Ajax请求中,为什么会出现这个异常呢,这是从rails 2.0 开始包含的一个新功能,目的在于防止CSRF (Cross-Site Request Forgery)攻击.rails 为了保证当前的请求是来自自己的请求,而不是通过其他网站伪造的请求,都会在生成的form 里加入一个隐藏的值. 使用中主要是组件的时候会碰到这种问题
9. 类变量 @@ var, 访问控制: cattr_reader :var
10. 写 <%= render :partial = '' %> 的时候务必把里面的路径写完全
11. 合理的修改内置库(主要是解决IE和firefox对div的解析不同)
#To set the div to span in the error css
ActionView::Base.field_error_proc = Proc.new {|html_tag, instance| %(<span class="fieldWithErrors"> #{html_tag}</span> )}
12. 好像mysql在win和linux下解析有点问题
2. 版本不向前兼容
3. 虽然在开发模式下,不过新添加一个controller的时候仍然需要重启服务器
4. 分页的成了一个插件 will_paginate
5. 数据库设计弄巧成拙(不需要将结构拆分的很细,从一定程度上会影响性能.特别是跨表查询,建议用空间换时间)
6. 利用过滤器验证时候的那个正则表达的头尾问题 /^........$/
7. 需要注意正则表达式终端特殊语意转义符号
8.ActionController::InvalidAuthenticityToken 异常一般出现出现在手写的html form 标签和Ajax请求中,为什么会出现这个异常呢,这是从rails 2.0 开始包含的一个新功能,目的在于防止CSRF (Cross-Site Request Forgery)攻击.rails 为了保证当前的请求是来自自己的请求,而不是通过其他网站伪造的请求,都会在生成的form 里加入一个隐藏的值. 使用中主要是组件的时候会碰到这种问题
9. 类变量 @@ var, 访问控制: cattr_reader :var
10. 写 <%= render :partial = '' %> 的时候务必把里面的路径写完全
11. 合理的修改内置库(主要是解决IE和firefox对div的解析不同)
#To set the div to span in the error css
ActionView::Base.field_error_proc = Proc.new {|html_tag, instance| %(<span class="fieldWithErrors"> #{html_tag}</span> )}
12. 好像mysql在win和linux下解析有点问题
def format_attr
a = self.attr
if a&&a!='' then
a = a[0,a.index(@@FG_LABEL)].to_i
end
end
13. 数据库建立视图的时候为什么会有特征标记
CREATE OR REPLACE ALGORITHM=UNDEFINED DEFINER=`testmysql`@`%` SQL SECURITY DEFINER VIEW `accountinfos` AS select `accounts`.`id` AS `id`,`accounts`.`email` AS `email`,`basicinfos`.`name` AS `name`,`exams`.`eplace_id` AS `eplace_id`,`exams`.`bnumber` AS `bnumber`,`exams`.`znumber` AS `znumber`,`relationinfos`.`cellphone` AS `cellphone`,`relationinfos`.`phone` AS `phone`,sum(`scores`.`mark`) AS `mark_sum`,`statuses`.`sta` AS `sta`,`statuses`.`field_id` AS `statuses_field_id` from (((((`accounts` join `basicinfos`) join `exams`) join `relationinfos`) join `scores`) join `statuses`) where ((`accounts`.`id` = `basicinfos`.`account_id`) and (`accounts`.`id` = `exams`.`account_id`) and (`accounts`.`id` = `relationinfos`.`account_id`) and (`accounts`.`id` = `statuses`.`account_id`) and (`scores`.`exam_id` = `exams`.`id`)) group by `accounts`.`id`;
14. 数据库设计不当,一方面是太理论化,另外一方面是自己太过于依赖工具activerecord.好是好,不过我没有学到核心,其实其内部性能不是很好的.系统的数据库表设计在初期存在过度设计的问题。
15. 前期决策有误(主要是经验不足,后期的需求变更,直接下到了数据库的变化)
16. ROR目前没有很好的报表解决方案,我通过大量的将其转化问html来实现打印效果不佳。
17. 单双引号的问题.''里面是什么样子显示设了吗样子, ""对里面的#{var}做转化
18. 关于那个观察Observer 新版本发生了变化.我不太会用了 .
19. 如何解决系统默认的show,和链接的问题.
20. 什么是RESTful routes,如何更好的利用这个东西;什么是rjs模板文件,如何更好的ajax相结合.
21. 有人提出更改后缀名以达到迷惑作用,这个有什么好的解决方案吗?
22. 带有命名空间的控制器,如何更好的写routes.rb来实现跳转
23. ruby不是java,而且语法结构相差还是很大的.不要弄混了.譬如它不支持: a=1; a++
CREATE OR REPLACE ALGORITHM=UNDEFINED DEFINER=`testmysql`@`%` SQL SECURITY DEFINER VIEW `accountinfos` AS select `accounts`.`id` AS `id`,`accounts`.`email` AS `email`,`basicinfos`.`name` AS `name`,`exams`.`eplace_id` AS `eplace_id`,`exams`.`bnumber` AS `bnumber`,`exams`.`znumber` AS `znumber`,`relationinfos`.`cellphone` AS `cellphone`,`relationinfos`.`phone` AS `phone`,sum(`scores`.`mark`) AS `mark_sum`,`statuses`.`sta` AS `sta`,`statuses`.`field_id` AS `statuses_field_id` from (((((`accounts` join `basicinfos`) join `exams`) join `relationinfos`) join `scores`) join `statuses`) where ((`accounts`.`id` = `basicinfos`.`account_id`) and (`accounts`.`id` = `exams`.`account_id`) and (`accounts`.`id` = `relationinfos`.`account_id`) and (`accounts`.`id` = `statuses`.`account_id`) and (`scores`.`exam_id` = `exams`.`id`)) group by `accounts`.`id`;
14. 数据库设计不当,一方面是太理论化,另外一方面是自己太过于依赖工具activerecord.好是好,不过我没有学到核心,其实其内部性能不是很好的.系统的数据库表设计在初期存在过度设计的问题。
15. 前期决策有误(主要是经验不足,后期的需求变更,直接下到了数据库的变化)
16. ROR目前没有很好的报表解决方案,我通过大量的将其转化问html来实现打印效果不佳。
17. 单双引号的问题.''里面是什么样子显示设了吗样子, ""对里面的#{var}做转化
18. 关于那个观察Observer 新版本发生了变化.我不太会用了 .
19. 如何解决系统默认的show,和链接的问题.
20. 什么是RESTful routes,如何更好的利用这个东西;什么是rjs模板文件,如何更好的ajax相结合.
21. 有人提出更改后缀名以达到迷惑作用,这个有什么好的解决方案吗?
22. 带有命名空间的控制器,如何更好的写routes.rb来实现跳转
23. ruby不是java,而且语法结构相差还是很大的.不要弄混了.譬如它不支持: a=1; a++