Rails 创建工程的一般步骤:
创建一个工程: rails 工程名(例如:CookBook)
启动这个工程: 在命令窗口,移动到CookBook目录下
输入: ruby script/server
创建一个控制器类: ruby script/generate controller MyTest, 产生的文件如下:my_test_controller.rb.
创建数据库:
方法一:
由于rails定义了三个运行时的环境,所以要至少创建三个数据库(development, test, and production),
mysql -u root
create database XXX_dev;
create database XXX_test;
create database XXX_prod;
grant all privileages on XXX_dev .* to 'XX_user' @'localhost' identified by 'password';
grant all privileages on XXX_test.* to 'XX_user' @'localhost' identified by 'password';
grant all privileages on XXX_prod.* to 'XX_user' @'localhost' identified by 'password';
mysql> grant all privileges on *.* to test@localhost identified by 'test' with grant option;
这句增加一个本地具有所有权限的test用户(超级用户),密码是test。ON子句中的*.*意味着"所有数据库、所有表"。with grant option表示它具有grant权限。
http://jed.dzhope.com/read.php/22.htm
create database.sql(省略)
mysql XXX_dev -u XX_user -p password < database.sql
mysqladmin -u root create XXXX_database_name
mysql XXX_dev -u XX_user -p <<< "show tables;"
方法二:
利用Migration创造数据库:
ruby script/generate migration create_database
Migration --数据迁移:
模型生成器
(model generator)
创建的
migration
迁移:ruby script/generate model 模型名, 会创建模型与表的关联。
只创建migration 本身:script/generate migration add_price_column
使用rake 的db:migrate 任务来运行migration迁移。
通过创建rails类的ActiveRecord::Migration的子类来完成Migration的迁移,每个类中至少包含一个up和down 方法,
class XXXXX < ActiveRecord::migration
def self.up
add_column :orders(表名), :email(列名), :string(类型)
end
def self.down
remove_column :orders, :email
end
end
由
migration
迁移支持的类型是:
:binary
,
:boolean
,
:date
,
:datetime
,
:float
,
:integer
,
:string
,
:text
,
:time
,和
:timestamp
当在一个
migration
迁移内定义一个列时,你可指定三个选项。每个选项由
key=>value
对给出。
1
、
:null => true or false
如果为
true
,则基础列被添加一个不能为
null
的约束
(
如果数据库支持的话
)
。
2
、
:limit => size
设置字段尺寸的限制。这基本上出现在用
string
创建数据库的列时。
3
、
:default => value
Renaming Columns (
重命名列
)
scaffold :
脚手架是一种预定义的框架,它可以生成一个简单的CRUD结构,两种方式来定义:
一种是在控制器的文件下加上 scaffold :控制器名称, 例如:
class RecipeController < ApplicationController
scaffold :recipe
end
一种是:手动创建
ruby script/generate scaffold student name:string address:string
tel:string
ruby db:migrate
rails 2.0以上版本已经不允许手动生成controller.
创建控制器:
ruby script\server controller 表名
创建模型:
ruby script\server model 表名
建立应用程序时可以制定数据库:
rails XXX --database=mysql
rails下删除生成的东西:
把generate换成destroy
分享到:
相关推荐
你可以使用以下命令创建一个新的工程: ```bash rails new 工程名 ``` 这会生成一个包含所有必要文件和目录结构的新Rails项目。接下来,你可以通过以下命令进入Rails的控制台,也称为Console: ```bash rails c ...
总之,"rails应用--导航栏实例工程"是一个综合性的教程,涵盖了Rails开发中的多个关键环节:路由设置、控制器创建、视图渲染、模型定义、以及后台管理工具的使用。通过实践这个实例,开发者可以深入理解Rails的工作...
Rails遵循Model-View-Controller(MVC)设计模式,这种模式是软件工程中用于组织应用程序代码的一种结构化方式。在本篇中,我们将深入探讨Ruby模仿Rails MVC的实现以及Ubuntu环境下启动Ruby应用的相关步骤。 **模型...
- **自定义表单构建**: 提供了构建自定义表单的方法和技术,帮助开发者创建更灵活和功能强大的用户界面。 - **jQuery集成**: 教授如何将jQuery集成到Rails应用中,增强页面交互性。 - **遗留数据库集成**: 讨论了...
此外,Rails 5还强化了API模式,使得创建RESTful JSON接口更为便捷。 Blueprint的概念在软件工程中广泛使用,它是一种预定义的设计模板,用于快速生成符合特定规范的代码结构。Rails Blueprint正是这样的工具,它...
Flex拥有许多独特的优势,使其成为创建RIA的理想选择。例如,它支持跨平台部署、具有丰富的组件库以及出色的性能。这些特性使得开发者能够快速地构建出功能丰富且外观美观的应用程序。此外,Flex还支持ActionScript ...
Rails的兴起不仅展示了技术的力量,更体现了敏捷开发理念在现代软件工程中的重要性。Rails框架将敏捷开发的精髓融入每一个设计细节,使得开发Web应用变得既高效又优雅。无论是初创企业还是大型组织,Rails都提供了...
### Flexible Rails:FLEX 3 on RAILS 2 #### 知识点一:Flexible Rails 概念 - **定义**:Flexible Rails 是一个结合了Ruby on Rails 和 Adobe Flex 技术的应用开发框架。 - **目标**:旨在利用Ruby on Rails 的...
而"Design Patterns in Ruby.pdf"这本书可能是重点,因为设计模式是软件工程中一种解决常见问题的最佳实践,对于提升代码质量和可维护性至关重要。 在Ruby on Rails中,设计模式的应用有助于提高开发效率和代码复用...
- **起源**:Ruby on Rails最初来源于Basecamp项目,由David Heinemeier Hansson创建。它旨在简化Web应用程序的开发过程,提高开发效率。 - **特点**: - **开发效率**:相较于传统的J2EE技术栈,使用Ruby on Rails...
- **索引与查询优化**:分析如何根据查询需求合理创建索引来提升查询效率。 - **缓存策略**:介绍如何使用Rails内置的缓存机制来减轻数据库的压力。 5. **扩展与定制** - **插件与gem**:介绍如何通过安装第三方...
Rails模型逆向工程 Rmre 是用于创建 Ruby on Rails 的实用程序 gem,目前只有 ActiveRecord,用于遗留数据库的模型。 除了创建所有模型之外,如果表和列命名不遵循 Rails 约定,它还会设置正确的表名和主键。 如果 ...
Super可以帮助您快速创建功能强大的管理页面,以便您可以专注于使应用变得更出色的部分。 Super致力于通过以下方式让工程师快速轻松地构建出色的管理页面: 提供具有可用默认值的可配置CRUD接口建立在标准的Rails...
您可能想要涵盖的内容: Ruby版系统依赖配置数据库创建数据库初始化如何运行测试套件服务(作业队列、缓存服务器、搜索引擎等) 部署说明… 如果您不打算运行rake doc:app请随意使用不同的标记语言。
rails-app食谱 这是一本食谱,允许仅使用存储库即插即用地创建应用程序。 该食谱负责创建数据库,通过捆绑程序安装所需的gems以及创建nginx堆栈来服务您的站点。 要求 此食谱已在Ubuntu 12.04和Ubuntu 14.04上进行了...
在描述中提到,"该应用程序与免费的和(非免费)工程软件即服务相关联",这可能意味着 RottenPotatoes 应用程序不仅提供了基础的Web功能,还可能涉及到使用云服务或第三方API,以实现更复杂的服务,如数据存储、分析...
综上所述,stee.vn 网站的构建是一个综合性的工程,涉及到后端的 Rails 开发、前端的 JavaScript 实现、数据库管理、版本控制、部署策略以及一系列的优化技术,以创建一个功能丰富、用户体验良好的个人站点。