参考我前面的博客:
http://hw1287789687.iteye.com/blog/2288230
http://hw1287789687.iteye.com/blog/2288267
(1)更新记录的视图
我原来写的(不成熟):
<div>编辑</div> <%= link_to "列表", {:action => 'list'} %> <div> <%= form_for :article, method: "PUT", url: {action: "update"} do |f| %> <ul> <li> <label for="">title:</label> <input type="text" name="article[title]" value="<%= @article.title %>"> </li> <li> <label for="">text:</label> <input type="text" name="article[text]" value="<%= @article.text %>"> </li> <li> <%= f.submit %> </li> </ul> <input type="hidden" name="id" value="<%= @article.id %>"> <% end %> </div>
最佳实践:
<div>编辑</div> <%= link_to "列表", {:action => 'list'} %> <div> <%= form_for @article, method: "PUT" do |f| %> <ul> <li> <label for="">title:</label> <%= f.text_field :title%> </li> <li> <label for="">text:</label> <%= f.text_field :text%> </li> <li> <%= f.submit %> </li> </ul> <% end %> </div>
特点:
(a)没有手动指定表单提交的action;
(b)没有显式地给文本框赋值
(c)省略id的隐藏域
(2)创建控制器
bin/rails generate controller pass
create app/controllers/pass_controller.rb
invoke erb
create app/views/pass
invoke rspec
create spec/controllers/pass_controller_spec.rb
invoke helper
create app/helpers/pass_helper.rb
invoke rspec
create spec/helpers/pass_helper_spec.rb
invoke assets
invoke coffee
create app/assets/javascripts/pass.coffee
invoke scss
create app/assets/stylesheets/pass.scss
(3)查看路由
bin/rake routes
Prefix Verb URI Pattern Controller#Action
articles GET /articles(.:format) articles#index
POST /articles(.:format) articles#create
new_article GET /articles/new(.:format) articles#new
edit_article GET /articles/:id/edit(.:format) articles#edit
article GET /articles/:id(.:format) articles#show
PATCH /articles/:id(.:format) articles#update
PUT /articles/:id(.:format) articles#update
DELETE /articles/:id(.:format) articles#destroy
root GET / welcome#index
(4)创建实体类:
bin/rails generate model Pass title:string username:string pwd:string description:text status:tinyint
invoke active_record
create db/migrate/20160403064342_create_passes.rb
create app/models/pass.rb
invoke rspec
create spec/models/pass_spec.rb
invoke factory_girl
create spec/factories/passes.rb
注意:列与列之间以空格分隔
因为ruby on rails 是高度的约定优于配置,所以一些细节被隐藏了,比如你看不到form的action属性
相关推荐
#### Rails入门 - **前提条件**:为了能够顺利地开始Rails的学习之旅,读者需要具备一定的Ruby语言基础,并且对Web开发有一定的了解。 - **Rails是什么?**:Rails是一种用于开发服务器端应用程序的模型-视图-控制...
在部署Rails应用到生产服务器之前,有许多事项需要注意。本章将讲述如何配置合适的服务器环境、选择适当的部署工具,以及如何确保应用能够在生产环境下稳定运行。 ### 附录A:附加资源 除了正文内容外,本书还提供...
书中在第 1 章“安装 Rails”中详细说明了如何安装 Rails 3 的过程,并提供了相应的步骤和注意事项。 #### 如何检查 Rails 版本 要确定当前正在使用的 Rails 版本,可以通过命令行输入 `rails -v` 命令来查看。...
9. **Rails最佳实践**:编码风格、性能优化、安全注意事项等。 10. **开发工具**:可能介绍像Rails Console、Rails Server、Rails Generators等命令行工具,以及IDEs(如Visual Studio Code、Atom、RubyMine)和文本...
笔记编程Ruby Ruby元编程 Ruby on Rails教程 敏捷Web开发Rails 5 附注4(21-24) 杂项Ruby其他注释Rails杂项说明上传文件说明注意事项Sidekiq注意Webpacker注意相关的其他项目及笔记: 资本主义研究耙研要学习: ...
在"注意.pdf"、"注意下.pdf"和"说明.pdf"中,可能会涵盖一些特别提示、注意事项或更深入的解释,比如Ruby的版本差异、最佳实践,或者如何避免常见的编程陷阱。 总的来说,通过这个“Ruby 语言教程从小白到入门”的...
6. **Ruby on Rails框架**:简要介绍如何利用Ruby on Rails这一流行的Web开发框架快速搭建功能丰富的网站。 #### 四、深入底层技术 1. **Ruby内部机制揭秘**:每章末尾都包含“Digging Deeper”部分,揭示Ruby运行...
它由Chris Wanstrath、PJ Hyett和Tom Preston-Werner使用Ruby on Rails编写。目前最新版本为Version 2.0,对应的osgEarth版本为osgearth_2.0_T2011-02-24。 **Option 2: 下载tarball** - **简介**:tarball是一种...
该网站支持Ruby on Rails编写,并提供了最新的`osgEarth`版本(例如`osgearth_2.0_T2011-02-24`)。 - **Option 2: 下载tarball** - **简介**:适用于Linux用户,可以通过下载tarball文件获得`osgEarth`源码包。 ...