您的位置:首页 > 编程语言 > Ruby

记录我的iTuquSpace的搭建过程(Ruby on rails 实践练习)

2012-09-16 18:58 441 查看
最近在学习Ruby on Rails,个人觉得最好的学习方法是在实践中学习,在实践中总结是最好的学习。也因为这一点,我拿来RialsSpace——Ruby on Rails web应用开发这本书,作为自己第一次ROR实践参考,我的网站名字叫iTuquSpace。

废话少说,进入正题

第0步,搭建Ubuntu下的ROR开发环境(ROR+MySQL)。

第1步,生成iTuquSpace基本文件并测试生成情况

生成: # rails new ituqu -d mysql

测试:# cd ituqu

# rails server (Ctrl+C退出)然后打开localhost:3000 可以看到新生成的网站首页

第2步,生成用户模型以操作数据库

生成: # rails generate model User

修改migration代码并生成数据库: # vi db/migrate/YYMMDD_create_users.rb

class CreateUsers < ActiveRecord::Migration
def change
create_table :users do |t|
t.column   :screen_name,  :string
t.column   :email,        :string
t.column   :password,     :string
t.timestamps
end
end
end
# rake db:migrate
设定user模型操作数据库操作数据库的验证机制:

class User < ActiveRecord::Base
attr_accessible :title, :body ,:screen_name,:password,:email
attr_accessor :remember_me
SCREEN_NAME_MIN_LENGTH = 4
SCREEN_NAME_MAX_LENGTH = 20
PASSWORD_MIN_LENGTH = 4
PASSWORD_MAX_LENGTH = 40
EMAIL_MAX_LENGTH = 50
SCREEN_NAME_RANGE = SCREEN_NAME_MIN_LENGTH..SCREEN_NAME_MAX_LENGTH
PASSWORD_RANGE = PASSWORD_MIN_LENGTH..PASSWORD_MAX_LENGTH
SCREEN_NAME_SIZE = 20
PASSWORD_SIZE = 10
EMAIL_SIZE = 30
validates_uniqueness_of  :screen_name, :email
validates_length_of      :screen_name, :within => SCREEN_NAME_RANGE
validates_length_of      :password, :within => PASSWORD_RANGE
validates_length_of      :email, :maximum => EMAIL_MAX_LENGTH
validates_presence_of    :email
validates_format_of      :screen_name,
:with =>  /^[A-Z0-9_]*$/i,
:message => "must contain only letters,"+
"numbers,and underscores"
validates_format_of      :email,
:with => /^[A-Z0-9._%-]+@[A-X0-9-]+\.+[A-Z]{2,4}$/i,
:message => "must be a valid email address"




                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: