注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

@fc_lamp

关注Web应用解决方案MySql/PHP/Python一盏名为"飞川"的灯~

 
 
 

日志

 
 

Rails MVC  

2011-11-15 11:50:00|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

默认路由访问机制(图来源于《Web开发敏捷之道》)

Rails MVC - fc-lamp - fc-lamp的博客

 

MVC目录结构(图来源于《Web开发敏捷之道》)

Rails MVC - fc-lamp - fc-lamp的博客

 

控制器的生成方式:

#创建控制器方式有两种:
# 1 使用script 脚本命令来创建,这样做会更新缓存,访问时不必重启服务
#      ruby script/generate controller Say
# 2 手动编写 controller,这样做需要重启服务,才能访问新创建的控制器。

# 模板解释:.html.erb后缀告诉Rails,需要借助ERB系统对文件内容进行扩展
#                      ERB就是用于将RUBY代码嵌入模板文件中。

class SayController < ApplicationController
    def hello
    end
end

 

#Build 项目(命令行)

rails --database=mysql depot 使用mysql
ruby script/generate scaffold product title:string desc:text image_url:string #创建控制器,view,model,数据库映射
rake db:migrate 映射到数据库
rake db:migrate VERSION=0 撤销映射

ruby script/generate migration add_test_data 产生新的数据迁移

# alert table products add colum price decimal(8,2)

#表单验证器(Model)
class Product < ActiveRecord::Base
    #表单验证器
    validates_presence_of:title,:description,:image_url #必填
    validates_numericality_of:price #数字
    validate :price_must_be_cent #自定义验证方法
    validates_uniqueness_of:title #唯一
    validates_length_of:title,:minimum=>10,:message=>'less than 10'#长度
    validates_format_of:image_url,:with=>%r{\.(gif|jpg|png)$},:message=>'image error' #正则
    protected
    def price_must_be_cent
        errors.add(:price,'price error') if price.nil?||price<0.01
    end
end


#模板说明:
h('<p>test<p><script>alert("ss")</script>')  特殊字符转换  &lt;p&gt;test &lt;p&gt; &lt;script&gt;alert('ss')&lt;/script&gt;

cycle('class-one','class-two') 用于奇偶行的不同颜色

gsub('要替换的','替换为')

truncate(String,:length=>30) 截取字符串#注 2.2.2之前版本没有':length=>',只有数字

link_to 链接处理标记

 

 待续。。。。。。。

 

 

 

  评论这张
 
阅读(258)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017