摘要:
actionmailer rails 内置提供了发送邮件的方法即actionmailer , 在内部使用TMail的api,同时提供了对测试友好的功能,默认在test状态下面,rails不会真正发送mail,只会把mail附加到ActionMailer::Base.deliveries中,这样可以通过测试方法访问了 配置actionmailer ActionMailer::Base.deli... 阅读全文
摘要:
web service 创建 先用generator 来创建service 参数为 generator web_service ServiceOne method_a method_b rails会创建一个service_one_api.rb在/app/apis下,同时有service_one_controller在/app/controllers/下 注意 因为ruby完全动态,所以无法根据方法... 阅读全文
摘要:
view view分为 builder模式和rhtml模式 builder模式例子如下,rails自带xml.div(:class => "productlist") do xml.timestamp(Time.now) @products.each do |product| xml.product do xml.produc... 阅读全文
摘要:
工具 script script/server -e development | test | production 切换运行环境 script/generate 支持 Admin::Book 这样的语法, 方便创建子空间 script/console 提供一个包含了当前工程环境的irb(注意运行环境,dev,test,prod) (以下两个目前在win32下面有bug,不能运行) script/... 阅读全文
摘要:
rails 测试 model的测试 => unit test controller的测试 => functional unit test 默认所有的Model都产生在 test/unit/xxxx_test.rb rake clone_structure_to_test #可以把dev中的数据结果自动同步到test的数据中 fixture 数据库不好测试,因为数据是长时间有效的,很难重现,所有得... 阅读全文
摘要:
SQL injection 默认的rails的 find(xxx) 是过滤了sql 字符串的 但是自己构造condition limit count sql等需要转义,务必使用? 或者:name来传参数,不要直接构造sql 性能配置 fastcgi timout注意: fastcgi的timeout是强制回收的, 如果一个请求超过timeout会被kill掉 返回500,所以长时间的任务要设... 阅读全文
摘要:
actuverecord realation convention 约定 对应关系: 普通对象: Person -> people table -> person_id join_table: tablenamea_tablenameb 为table名(按照字母顺序排列) 关系 注意belongs_to对应的表必须有外键, rails认为一个表belongs_to他外键引用的表 one-t... 阅读全文
摘要:
扩展的activerecord act_as_list act_as_list : one-to-many对象关系是通过list(默认是set)来完成, 既然有list, 就有了排序,首先对应表中必须有position(自动默认)字段,用来标示排序,如果不默认就得显示通过:order指定class Parent :position end class Child :parent_id end ... 阅读全文
摘要:
rails笔记 activerecord 修改model的属性(如果是性质变化)以后最好重启动,避免奇怪的错误 自动类型转换: int, integer => Fixnum decimal, numeric => Float clob, blob, text => String interval, date => Date float, double => FLoat char, va... 阅读全文
摘要:
终于不需要手动去编译mysql的驱动了, 档案在这里一个4.1.15 一个5.0.15把对应的文件(mysql.so)拷贝到ruby\lib\ruby\site_ruby\1.8\i386-msvcrt 下面即可 阅读全文