蒋志新.com

专注WEB开发

ROR学习笔记1:基本配置与ActiveRecord

常用的代码生成器
生成项目:rails appName
生成CRUD操作:ruby script/generate scaffold controllerName
生成某个模块的控制器代码:ruby script/generate controller controllerName
生成一个邮件模块的代码框架:ruby script/generate mailer mailName
生成一个model类:ruby script/generate model modelName
生成一个WebService模块的代码框架:ruby script/generate web_service serviceName

启动rails
ruby script/server

Rails的配置与约定
约定优于配置
三个需要修改的配置文件
运行Ruby的环境属性:environment.rb
数据库连接文件:database.yml
默认的路由规则:routes.rb

Rails的命名约定
1.model类的首字母大写,对应数据表名为全是小写的复数形式;如果表间存在主从关系,则从表中的外键为主表model类的名的小写后加_id
2.控制器类与控制器文件名:名为abc的控制器,则要求该控制器文件为abc_controller.rb,该文件内定义一个AbcController的控制器类
3.页面装饰文件:views/layouts下面abc.rhtml
4.helper模块

ActiveRecord活动记录集
ActiveRecord是Rails中的核心内容,它是Rails提供对象关系映射层,用于映射对象和数据库之间的关系。一条活动记录就是一个对象,该对象包装了数据库中的某个表或视图的某一行,并封装了对数据库的CRUD(create,read,update,delete)操作。

ActiveRecord的基本映射
1.数据表映射类
2.数据表的行映射对象(即实例)
3.数据表的列映射对象的属性

定义一个ActiveRecord的持久化类
class User ......
end
定义后,Rails会自动完成这个持久化类和底层表之间的映射关系
映射约定:
1.类和对应的数据表同名
2.类名是英文单数形式
3.首字母大写
4.如果类名由多个单词组成,连着写这些单词,且每个单词首字母大写
Rails对表名的约定:
1.表名是英文的复数形式
2.所有字母均是小写
3.如果类名由多个单词组成,每个单词之间须以下划线分隔,最后一个单词为复数形式。

自定义映射关系

  1. class Admin<ActiveRecord::Base
  2. set_table_name 'users'
  3. end

自动创建对象的时间戳timespamp:创建created_at/created_on update_at/update_on

相关日志

Leave a comment

您必须 登录 后才能发表留言。

无分类


无分类


无分类


无分类


无分类

无分类


无分类


无分类


无分类


无分类


无分类

无分类