Rails

建立应用程序

rails depot -d mysql
#注rails 2.0之后采用sqlite做为默认数据库,使用mysql做为数据库需要加参数

若是点击刚刚的静态页面中的About your application’s environment,我们会看到Rails已经对我们当前的配置进行了检测。

很可惜,会出现一个很严重的错误,到现在我们只是在建立depot的时候申明了我们将使用mysql,剩下就没有对数据库进行过任何操作。

在建立数据库之前需要在/depot/config中的database.yml文件中,配置mysql的参数(注意空格)

rake db:create
#便会创建一个于depot相关的数据库。在这个例程中所有需要保存的数据库信息,都会放在这个数据库内。

可以查看mysql中建立好的数据库

Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.0.67-community-nt MySQL Community Edition (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| depot_development  |
| mysql              |
| test               |
+--------------------+
4 rows in set (0.03 sec)

mysql>

数据移植

rake db:migrate

上面这个命令要在例程中用到多次,功能是将rails应用中间的有关的数据类型的更改迁移映射到数据库中间去。
比如创建了一个scaffold(后面我们会用到),我们需要用rake db:migrate将其迁移到数据库。

建立一个页面

ruby script/generate scaffold product title:string description:text image_url:string

这一句命令包含了相当丰富的内容。 顾名思义,scaffold,暂且我们将之意思归到“架构”。

我们通过这句话建立了一个这样的架构,它有自己的页面,可以通过http://localhost:3000/products访问

它包涵了一个叫products的表,这个表的内容就显示在刚刚的页面中。

并且这个表有3列,第一列是数据类型为string的title,然后是数据类型为text的description,然后是string的image_url。

rake db:migrate #建立好页面后需要把页面中的内容迁移到数据库(建表)

Rail敏捷开发第三版之前的报错解决方法

ruby script/generate scaffold Product Admin
执行后错误代码 -->  wrong number of arguments (1 for 2)

原因 --> rails 2.1 scaffold 支架变更

解决方法
ruby script/generate scaffold product name:string description:text price:decimal
/var/lib/openshift/bccd8eac1968476490eaee9ced33c7bf/app-root/runtime/repo/php/data/pages/rails.txt · 最后更改: 2012/09/07 09:21 (外部编辑)
到顶部
CC Attribution-Noncommercial-Share Alike 3.0 Unported
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0