Rails在一些基本功能上的实现:
1.Controllers 在Rails中的协调角色 注意,一个C,协调一个M和一个V 1)C与M class BookController < ApplicationController #建立与model的关系,scaffold接一个Symbol Object #Symbol 可以是model类的名字(要区分大小写) #Symbol 也可以是保存model类的文件的名字(不区分大小写)
2)C与V class BookController < ApplicationController #这可以做必要的操作,帮助View的呈现数据,这时你可以在view有关目录下面放入你的rhtml(其他也可以)
例如: class BookController < ApplicationController
2.Model 在Rails中的角色 1)建立的 model 必须是表名字的单数,并且这个类和数据库自动关联 2)为数据库的表建立关系 A. belong_to 例如: class Book < ActiveRecord::Base B. has_many 例如: class Category < ActiveRecord::Base
我们知道,books表和categories表的关系是,1对N的关系,所以必须在多方,也就是book方,假如一个外键来为两个表建立关联,我们加入category_id就可以了,这样我们就可以通过book的instance variable直接访问categories表的内容,比如:@book.category.name 来读取categroies表里面的name属性
3.view 在Rails中的角色 使用的是<%%>和<%=expression%>(expression可以加,号,这个是区别于java的) 1)读取数据库里面的数据: <% @books.each do |book| %>
注意,这里的books,是在controller里面就定义的一个variable,它是一个collection,通过each来获取数据库中每一行数据,:action 表示点击连接以后的转向页面,:id表示传递参数 id
2)传递参数,数据库检索,通过controller整合 class BookController < ApplicationController
所有定义的方法,都是针对view的,都是给view使用的。@params["name"]是其他页面传递过来给你def的页面的 |
|