读 Agile Web Development with Rails Second Edition 读书笔记 (三)

1.类级的变量 及 form.select 中 prompt 的作用 及 validates_inclusion_of 的用法
p 137
ruby 代码
 
  1. form.select :pay_type, Order::PAYMENT_TYPES, :prompt => "select a payment method"  
  2.   
  3. class Order < ActiveRecord::Base  
  4.   validates_inclusion_of :pay_type:in => PAYMENT_TYPES.map { | disp, value| value}  
  5.   PAYMENT_TYPES = [  
  6.     # Displayed   stored in db  
  7.     ["Check""check"],  
  8.     ["credit card""cc"],  
  9.     ["purchase order "]  
  10.   ]  

prompt  空的选择的提示


2.保存未登录用户访问的 uri 在他登录后自动转向
p 159
ruby 代码
 
  1. session[:original_uri] = request.request_uri  
  2. uri = session[:original_uri]  
  3. session[:original_uri] = nil  
  4. redirect_to(uri || {:action => "index" })  


3.link_to 可以加 method => "post"

4.删除的事务 这样做后可以自动回滚
def after_destroy
  if User.count.zero?
    raise "Can't delete last user."
  end
end

5. logger.info(" ..info .. ")

6.use curl test REST
> curl -H "Accept: application/xml" http://localhost:3000/info/who_bought/1
> curl -H "Accept: text/html" http://localhost:3000/info/who_bought/1

7.render :xml => @product.to_xml(:include => :orders)
xml 代码
 
  1. <product>  
  2.   <name>new_product<!---->name>  
  3.   <orders>  
  4.     <order>  
  5.       <id>100<!---->id>  
  6.       <price>200<!---->price>  
  7.     <order>  
  8.     <order>  
  9.       <id>101<!---->id>  
  10.       <price>202<!---->price>  
  11.     <order>  
  12.   <!---->orders>  
  13. <!---->product>  
<product><orders><order><id>
    </id>

8.
# HTML 模式文档
rake doc:app
# code stats
rake stats 
</order></orders>

</product>

你可能感兴趣的:(Web,xml,读书,Ruby,Rails)