创建一个控制器和视图 要在 Rails 中显示“My first test” 的静态页面,需要新建一个控制器和视图 控制器用来接受向程序发起的请求 视图的作用是,以人类能看懂的格式显示数据 [root@...h202 blog]# rails generate controller welcome index Running via Spring preloader in process 11871...root@h202 blog]# vim config/routes.rb [root@h202 blog]# grep -v " #" config/routes.rb | grep -v "^$" Rails.application.routes.draw...root 'welcome#index' end [root@h202 blog]# ---- 进行访问 直接刷新页面 注意,我修改了配置和服务,但并没有对服务进行重启,而可以直接加载出新的内容,说明 Rails...可以进行动态加载 In development mode, Rails does not generally require you to restart the server; changes you
查看可用ruby版本 [root@h202 ruby]# rvm list known -bash: rvm: command not found [root@...
2.1.8) ruby-openid-apps-discovery(1.2.0) 红宝石(0.1.1) rubyzip(0.9.4) selenium-webdriver(0.2.0) sqlite3(...1.3.3) sqlite3-ruby(1.3.3) 词色(1.0.5) 雷神(0.14.6) 树梢(1.4.9) tzinfo(0.3.27) xpath(0.1.4) 2.尝试指令 相信如果之前用过...现在这些在rails 3.*都没有了?...用法:导轨COMMAND [ARGS] 最常见的rails命令是: 生成生成新代码(快捷别名: “ g”) console启动Rails控制台(快捷别名: “ c”) 服务器启动Rails...生成GENERATOR [args] [options] 常规选项: -h,[-help] #打印生成器的选项和用法 -p,[--pretend]#运行但不做任何更改 -f
通过 docker inspect afdddae9b2bf 可以获得丰富的,容器镜像的细节 Tip: 后面的操作并不依赖于这上面的操作,上面的操作只是为了演示官方 rails 镜像的拉取和相关属性 -...--- 拷贝 Rails 应用 从这里开始构建一个可以被反复使用的 Rails 镜像 [root@h202 ruby]# ls blog [root@h202 ruby]# rsync -av blog...layouts/application.html.erb app/views/welcome/ app/views/welcome/index.html.erb bin/ bin/bundle bin/rails...config/initializers/wrap_parameters.rb config/locales/ config/locales/en.yml db/ db/development.sqlite3
15. 3Sum Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0?...Find all unique triplets in the array which gives the sum of zero....差不多,计算两个的和的方式是:为了避免重复,重新用一个set容器,解决重复的问题。...但是这里的情况是,重复的一个数字是可以出现的,而且是三个数字相加的和,所以我们没法用之前的处理办法。...其实跟前面的3sum解决的办法是一样的,无非这里为了减少一点复杂度,借用了一下大家使用的方法。,在每次遍历的时候进行一点判断,以减少循环的次数。
root@h202 blog]# vim config/routes.rb [root@h202 blog]# grep -v " #" config/routes.rb | grep -v "^$" Rails.application.routes.draw
题目大意 从一个数组中找到三个数,使这三个数的和为0。有可能存在多组解,也有可能存在重复的解,所以需要去重。...可以将num[i]的相反数即-num[i]作为target,然后从i+1到len(num)-1的数组元素中寻找两个数使它们的和为-num[i]就可以了。 3 这个过程要注意去重。...discussion的很多和这个类似 时间复杂度:O(n^2),假设hash是O(1)的话。...int left = i + 1, right = nums.length - 1; while (left < right) { int sum...= nums[i] + nums[left] + nums[right]; if (sum == 0) { list.add(Arrays.asList
Find all unique triplets in the array which gives the sum of zero....vector > ret; int len = num.size(); if(len 3)...num2.begin(), num2.end() ); // sort O(n*log(n)) vector tmpRet(3)...continue; tmpRet[0] = num2[i]; while(l < r) { int sum2...= num2[l] + num2[r]; if(num2[i] + sum2 == 0){ tmpRet[1] = num2[l
题目大意 3sum问题的变种,寻找与目标数字最近的那一组数,返回三数之和 解题思路 一样的遍历每个数,对剩余数组进行双指针扫描。...区别仅仅在于当: sum = A[left] + A[right] (1) sum = target时直接返回 (2) sum !...= target时,在相应移动left/right指针之前,先计算abs(sum-target)的值,并更新结果。...:type target: int :rtype: int """ nums.sort() # 先排序 closest_sum...for i in range(len(nums)-2): # 遍历至倒数第三个,后面两个指针 if i == 0 or nums[i] > nums[i-1]: # 排除相同数和刚开始的时候
保存成功就直接显示,如果保存失败,就重绘 new 页面,new 页面中加入了对错误信息的显示
cat app/views/articles/new.html.erb Test blog http://soft.dog/ [root@h202 blog]# 要注意命名,因为 Rails
(这里的 /articles 明明对应两个方法,GET、POST ,有点不太明白,为什么这样指定就一定成了POST请求)
分块设计有助于管理复杂的应用程序,因为可以在一段时间内只用关注一个方面;例如,可以在不依赖业务逻辑的情况下专注于视图设计;同时也让应用程序的测试更加容易;MVC 分层同时也简化了分组开发;不同的开发人员可同时开发视图、控制器逻辑和业务逻辑...通常视图是依据模型数据创建的 Controller(控制器)是应用程序中处理用户交互的部分,通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据 image.png ---- 创建一个简单页面 Rails
点击 【Destroy】 后会根据我们的定义弹出提示 连续删除几次后所剩无几 目前已经通过 Rails 实现了文章的 新建、显示、列出、更新、删除 操作 ---- 命令汇总 rails server...-b 0.0.0.0 rails generate controller welcome index cat app/views/welcome/index.html.erb vim config/routes.rb...grep -v " #" config/routes.rb | grep -v "^$" rake routes bin/rails g controller articles cat app/controllers...cat app/views/articles/new.html.erb bin/rake routes cat app/controllers/articles_controller.rb bin/rails...bin/rake db:migrate cat config/database.yml grep -v "^#" config/database.yml ll db/development.sqlite3
:article]) @article.save redirect_to @article end end [root@h202 blog]# 再提交一次 我们要明确地告知 Rails
定义 update 方法,并且添加 edit 链接和 show 链接 [root@h202 blog]# vim app/controllers/articles_controller.rb [root
再次提交一回 ---- 创建模型 Rails 提供了一个生成器用来创建模型 [root@h202 blog]# bin/rails generate model Article title:string...x # gem install sqlite3 # # Ensure the SQLite 3 gem is defined in your Gemfile # gem 'sqlite3'...: db/development.sqlite3 test: <<: *default database: db/test.sqlite3 production: 3 [root@h202 blog]# ll db/development.sqlite3 -rw-r--r-- 1 root root...5120 Apr 22 22:19 db/development.sqlite3 [root@h202 blog]#
rails2的时代,对于动态显示数据的查询使用ajax的方法,一般转向到.js文件。...使用如下的代码: render_to do |format| format.js end 对于rails3,只能使用的方法: respond_to do |type| type.js { render
前言 Rails 是使用 Ruby 语言编写的网页程序开发框架 通过集成开发者需要的常用组件,极大地简化了网页程序的开发 Tip: 类似于 python 的 Django ,perl 的 Dancer...继前面的 Ruby on Rails 基础 ,这里再进一步探究一下其内部运作机制 Rails 的相关基础,详细可以参考 官方文档 和 Ruby China 的 Rails 入门 Tip: 当前的最新版本为...Rails 5.0.0.beta3 发布于 February 27, 2016 4:00 pm ---- 概要 ---- 环境 [root@h202 blog]# cat /etc/issue CentOS...--version Rails 4.2.6 [root@h202 blog]# node -v v0.10.42 [root@h202 blog]# rvm -v rvm 1.27.0 (latest...:3000 => Run `rails server -h` for more startup options => Ctrl-C to shutdown server [2016-04-22 13:47
再次加载 可以成功显示了 ---- 列出所有文章 [root@h202 blog]# vim app/controllers/articles_control...