1,验证电子邮件格式
答案: #必须是有效的email格式
validates_format_of :email, :with => /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
2,resources :users 会创建哪些路由
1)、:as选项可以使用新的名称重写标准的路径。
resources :users, :as => “members”
URL中就包含了members,但是路由还是users控制器。
2)、:controller选项可以在资源路由中指定一个不同的控制器名称。
resources :users, :controller => “members”
上面代码表示使用members控制器,但请求的路径是users文件夹中。
3)、:conditions选项
在Rails应用程序中,可以通过使用:conditions选项设置HTTP响应的个别路由,但是在实际应用中,并不推荐这样做。
4)、:path_names选项
map.resources :users, :path_names => {:new => ‘add’, :edit =>’modi’}
:path_names选项可以重写在URL中自动身材的new和edit部分,但是实际的方法名称没有改变,只是URL变化。
5)、:path_prefix选项
resources :users, :path_prefix => “/showrole/:user_id”
:path_prefix选项可以前面增加一个前缀。
6)、:singular选项
resources :cities, :singular => “city”
一般情况下,应用程序要求不把复数资源转换为单数资源。可以使用:singular选项重写复数资源。
7)、:requirements选项
resources :users, :requirements => {:id => /[A-Z][A-Z][0-9]+/}
在RESTful路由中能够使用:requirements选项,为:id参数添加一个格式。
8)、:only选项和:except选项
resources :photos, :only => [:index, :show]
默认情况下,Rails会根据默认的方法创建7个路径。但是可以使用:only和:except选项来调整这个行为。:only指定仅仅是要生成的路由。
在Rails应用程序中,一旦使用上面代码声明路由,使用GET请求可以执行成功,而使用POST请求就会失败。
resources :users, :except => :destroy
:except选项是指定哪个路由不被产生。
3,rake的作用:
- rake
- rake db:migrate
- rake routes
4,已知str=”abcdef”, str[0]=? 如何输出字符“a”
5, ['a1','a3','a2','a5','a4','a10'].sort=?
6, 如何为一个已存在的类添加实例方法和类方法
7, require, load,autoload和require_dependency的区别是什么
- requre,load用于文件,如.rb等等结尾的文件。
- include则用于包含一个文件(.rb等结尾的文件)中的模块。
- requre一般情况下用于加载库文件,而load则用于加载配置文件。
- requre加载一次,load可加载多次。
8,如何根据URL获取rails项目的controller和action
9, User.find(10) 和 User.find_by_id(10)的区别。
10, user = User.first; user.name = ‘wangwei’, 如何查看user name被设置为’wangwei’之前的值。
11,”中国 2013″.size=? ”中国 2013″.bytesize=?