1/新建项目
$rails new depot -d mysql
2/进入文件夹目录
$cd depot
3/x修改项目文件
Gemfile----source 'https://ruby.taobao.org'(国内镜像源)/gem 'mysql2','0.3.11'(指定数据库)
config/routes.rb----match ':controller(/:action(/:id))(.:format)'(去掉注释)
config/databases.yml----password: 'xxxxx'(修改密码,注意英文空格,纯数字需要外加‘’单引号)
4/重新加载修改文件
$bundle install
6/启动数据库
$mysql -u root -p #进入数据库
mysql> show databases; #显示当前数据库,注意;分号为语句结束符
mysql>use mysql; #使用自己的数据库
mysql>ctrl+c(退出)
7/创建数据库
$rake db:create #创建数据库
8/创建模型
$rails g model Product #创建模型,模型名字大写字母开头,对应的数据库表名为products(复数),每创建一个模型,db/migrate下会生成对应的迁移文件
9/添加元素字段
$rails g model Product title:string description:string price:integer(注意单词拼写)
$rails g migration add_ID_to_products #后期添加元素字段,文件名意在说明文件作用
10/用户自定义文件
1)views下新建products文件夹,存放用户代码;
2)app/controllers下新建products_controller.rb,用于方法定义,即控制器(注意命名不能为复数)
3)app/views/products下新建index.html.erb/new.html.erb/edit.html.erb等,用于编写页面显示代码
11/加载程序更改内容
$rake db:migrate
12/启动服务器
$rails s
$rails c #打开控制器
13/效果查看
在浏览器的新页面输入地址127.0.0.1:3000/products/index
多个数据库表的链接查询:
1)#在teachers_controller.rb文件下进行index的方法定义
def index
@teachers = Teacher.where(:xueyuan_ID => params[:id])
end
2)#在views/teachers/iindex.html.erb文件下进行id写入
<td>
<a href="/teachers/delete?id=<%=teacher.id%>">delete</a>
<a href="/teachers/edit?id=<%=teacher.id%>">update</a>
<a href="/students/index?id=<%=teacher.t_ID%>">students
</td>
!!!错误解决:
#index----Routing error:注意各文件命名的细节,如单词拼写/单复数等,products_controller(单数)
#new----name error:注意实例变量的使用,product/products/@product的区别
#update----ActiveRecord::RecordNotFound...:注意循环模块的使用@products each do| product |
#create----ActiveRecord::StatementInvalid...:看错误提示的位置,检查语法错误
1