[Ruby]Rails的MVC部分理解
Posted z354681250
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Ruby]Rails的MVC部分理解相关的知识,希望对你有一定的参考价值。
1. controller对数据库的间接操作
在大多数情况下,controller对数据库的操作,都是以model的形式写代码的,如下例子:
给id为params[:id]的kindergarten创建一个新的bill
@bill = Kindergarten.find_by(id: params[:id]).bills.build(bill_params)
这里,我们首先看到的是大写的Kindergarten,这个是model的类名;接下来,为什么又变成了小写的bills了呢?是数据库名字么?不是的,我们回头看一下Kindergarten类的定义:
has_many :bills, dependent: :destroy
这下子就明了了,那个bill是来源于这个has_many所产生的方法。
因此,可推测MVC中controller对数据库的操作全是基于model的?
以上是关于[Ruby]Rails的MVC部分理解的主要内容,如果未能解决你的问题,请参考以下文章
Choosing web framework: ASP.NET MVC vs Django Python vs Ruby on Rails(转载)