配置mysql并且开始我们的depot之旅
1.安装mysql- 5.0.22-win32下载地址:
http://download.mysql.cn/downloa ... ql-5.0.22-win32.zip
修改一下安装路径C:\MySQL,剩下的安装默认安装即可
配置环境变量,添加C:\MySQL\bin;
E:\rails\work>rails depot #创建rails应用depot---
E:\rails\work\depot>mysqladmin -u root create depot_development #创建数据库
E:\rails\work\depot>ruby script/generate model product #创建product模型类出现:
这里着重注意两个文件:
迁移任务 : 001_create_products.rb 和 模型类 :
product.rb
说明一下:迁移任务的名字由几部分组成:描述自己的功能(create_
products),加上序列号作为前缀(001),再加上扩展名(.rb)。
打开db/migrate目录下的001_create_products.db,添加代码来创建数据库表!
说明:up()方法用于实施迁移,定义数据库表的代码要写在这里,down()方法负责撤销up()方法的效果,当需要把数据库恢复到前一个版本时就会执行这个方法。 class Create
Products < ActiveRecord::Migration
def self.up
create_table :
products do |t|
# t.column :name, :string
t.column :title, :string
t.column :description, :text
t.column :image_url, :string
def self.down
drop_table :products
end
end
E:\rails\work\depot>rake db:migrate #数据迁移
products表会被添加到database.yml文件的development
rake怎么知道哪些迁移任务实施过,哪些没有呢?运行迁移任务之后去看看数据库结构,你就会发现schema_info这么一张表,它的作用就是跟踪数据库的版本。
E:\rails\work\depot>ruby script/generate controller admin #创建控制器admin
------------------------------------
在admin这个控制器中加上脚手架(scaffold)
-------------------------------------
class AdminController < ApplicationController
scaffold :product
end
------------------------------------
scaffold声明告诉rails:请在运行时生成应用程序代码; :product模型来维护数据。
----------------------------------------
E:\rails\work\depot>ruby script/server #启动rails应用
http://localhost:3000/admin
[
本帖最后由 zllicho 于 2007-11-4 21:07 编辑 ]