Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/ktcu/public_html/kb/includes/Sanitizer.php on line 1498

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/ktcu/public_html/kb/includes/Sanitizer.php on line 1498

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/ktcu/public_html/kb/includes/Sanitizer.php on line 1498

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/ktcu/public_html/kb/includes/Sanitizer.php on line 1498

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/ktcu/public_html/kb/includes/Sanitizer.php on line 1498

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/ktcu/public_html/kb/includes/Sanitizer.php on line 1498

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/ktcu/public_html/kb/includes/Sanitizer.php on line 1498

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/ktcu/public_html/kb/includes/Sanitizer.php on line 1498
HostMonster:设置使用Ruby on Rails - 美国主机知识库

HostMonster:设置使用Ruby on Rails

出自美国主机知识库

跳转到: 导航, 搜索

问:如何设置使用 Ruby on Rails?

答:在Hostmonster上使用 Ruby On Rails :

接下来是对如何在hostmonster帐号上应用ruby on rails软件做一个摘要介绍。在文章的最后你可以找到一些能帮助你了解更多ruby on rails内容和相关信息的资源,其中的一些rails指南比本文要深奥的多。

在涉足Ruby on Rails,之前,你应该知道他到底是什么。 Ruby on Rails是一个高级面向对象的模块视图控制器应用基础。如果你没有完全理解前面这句话的意思,在进行rails编程之前还需要一些时间的学习。Ruby On Rails 是面向高级的编程用户,在你没有准备好之前就开始是十分困难的。 这篇指南浅显易懂, 但是要使用rails还需要学习更多。本指南的作用是在hostmonster开发ruby on rails的入门。

模块视图控制器 (简写MVC) 设计模式相当直观,就是意味着你的程序将分为3个单独的组成部分:模块,视图,控制器。 "模型" 是指你的数据,不管 是以什么方式存储的。如果你在写一个blog,,这就是你的发布的内容和评论所在。 "视图" 是你的用户界面 。 在 ruby on rails里,我们讨论的是显示你的 HTML.的部分。控制负责处理逻辑问题, 将模块绑定到视图。 MVC编程基于很多原因很有优势的。

从现在开始,我们假定你对面向对象和MVC都有了了解,现在你可以涉足如何在hostmonster上开发rails applications。在开始之前一些额外的注意事项:

首先,你需要开启SSH访问。这样你需要联系客户服务,或者发送email到support@hostmonster.com 或者拨打电话1-888-401-4678。

其次,你需要看一些提及到程序 "script/server"或"webrick"的指南。这并不是一个hostmonster程序所必需的,你可能永远也用不到。这是为那些在自己的电脑上开发rails application的人准备的,他们没有安装apache,这是用来配置ruby on rails的使用的。但是,你可以访问hostmonster上的服务器,所以你不需要担心script/server.。不要去运行,因为甚至可能不工作。

本指南基于ruby on rails的官方指南,你可以在这个地址找到他http://wiki.rubyonrails.com/rails/pages/Tutorial, 而本指南已经经过修改以适应hostmonster的一些特殊东西。

开始,使用SSH.登入服务器。你需要为你的rails application创建一个工作区域。事先考虑到你可能会最终需要多个applications,你需要创建一个工作目录并“cd”进入。你可以给目录所以命名,但是本教程假设文件名是"rails"。

% mkdir ~/rails
% cd ~/rails

现在可以创建你的 application了。刚才我们已经做了一个简单的Hello World 应用程序,我们暂时假设这个程序名为first。

% rails first
% cd first

接下来,我们要建立一个子域名供这个程序运行。登入你的 cPanel,,点击 'subdomains',在第一个文本框中输入'first'然后点击'Add'。你现在创建了一个新的子域名, first.yourdomain.com,并且是你的ruby on rails 程序的新地址。现在,我们将要使用下面的命令把你的程序的"public" 目录变成该子域名的根目录 。


% cd ~/public_html/
% rm -r first
% ln -s /home/YOUR_USERNAME/rails/first/public first

你现在访问 http://first.yourdomain.com/将看到Ruby on Rails的欢迎语。正如欢迎页面所建议,是时候建立你的数据库了。

在cPanel中,点击 'MySQL Databases'。在这里你要做的第一件事是为使用rails添加一个SQL用户,你可以任意命名,假定命名为'rails'。 cPanel 会将你的帐号的username作为此处的用户名,所以你必须留意实际创建出来的用户名(应该是username_rails)。

接下来,我们添加数据库,命名为 'first',,和你的application 名字匹配。你会再次注意到username_已经被预先定好了。 最后,我们将这个用户名连接到数据库。 从下拉框中选择username_rails和 username_first,确保下面检验栏的 'All' 已选中,然后点击 'Add User To DB' 按钮。

现在重复这个步骤, 只是数据库名字是'firstdev',然后把username_rails 链接到数据库。

现在我们要编辑database.yml文件。用你最喜欢的编辑器打开~/rails/first/config/database.yml 并修改'development' 和'production' 部分 ,需要包括你刚刚创建的用户名,密码和数据库。

production:
adapter: mysql
database: username_first
host: localhost
username: username_rails
password: password

development:
adapter: mysql
database: username_firstdev
host: localhost
username: username_rails
password: password

接下来你要创建数据库的真正数据。从cPanel,的mySQL页面你可以发现一个名为'phpmyadmin' 的链接。在phpmyadmin,里,从左边的下拉框中选择"_first" 数据库,然后点击顶部的"SQL" 。粘贴进以下内容,点击'Go'。

CREATE TABLE `people` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` varchar(50) NOT NULL default ,
`street1` varchar(70) NOT NULL default ,
`street2` varchar(70) NOT NULL default ,
`city` varchar(70) NOT NULL default ,
`state` char(2) NOT NULL default ,
`zip` varchar(10) NOT NULL default ,
PRIMARY KEY (`id`),
KEY `name` (`name`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;

现在再一次点击SQL钮,运行该请求。
INSERT INTO `people` VALUES (1, 'Superman', '123 Somewhere', , 'Smallville', 'KS', '123456');

现在为你的_firstdev 数据库重复这2个sql请求。

下一步是创建一个控制器。
% ./script/generate controller First list view new edit

在已经创建后,你可以创建自己的模块。

% ./script/generate model Person

现在我们要修改2个文件。
首先,打开app/views/first/view.rhtml 并将其内容改变成下面这样:

<html>
<body>
<h1>Friends#view</h1>
<p>This page will display one friend</p>
<p>
<%= @person.name %><br />
<%= @person.street1 %><br />
<%= @person.street2 %><br />
<%= @person.city %><br />
<%= @person.state %><br />
<%= @person.zip %><br />
</p>
</body>
</html>


接下来,打开app/controllers/first_controller.rb 并将'view'修改成这样:

def view
@person = Person.find(1)
end

祝贺你,你现在有一个可以使用的从的ruby on rails 程序了,这个程序可以从数据库中读取信息。访问 http://first.yourdomain.com/first/view你将获得更多信息。




你现在应该继续阅读其他 ruby on rails 指南。你可以下面的站点找到很多有用信息http://wiki.rubyonrails.org/,还有http://rubyonrails.org/docs。你同样应该去看一看Ruby On Rails截屏视频,从中可以看到,一个有经验的ruby on rails 开发者是如何使用ruby on rails在几分钟里创建一个功能齐全的application。

其他的信息和指南:

关于MVC的更多信息: http://wiki.rubyonrails.com/rails/pages/UnderstandingMVC 官方Ruby On Rails截屏视频:http://media.rubyonrails.org/screencasts Ruby on Rails wiki: 这些指南很有帮助http://wiki.rubyonrails.org/

为什么ruby的指南令人痛苦:不管你喜不喜欢,他确实是ruby语言的很好的介绍: http://poignantguide.net/ruby

个人工具
名字空间
变换
动作
导航
工具/资源
工具箱