`
rubyac
  • 浏览: 8886 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Flex on Rails 实例(一)

阅读更多
以下的例子我们在ubuntu下,(例子引用Manning.Flexible.Rails)
netbeans6.1 +rails2.1+Flex3 SDK+ruby1.86环境下执行

创建一个项目命名为:pomodo

~/NetBeansProjects$ rails pomodo
~/NetBeansProjects$ cd pomodo
~/NetBeansProjects/pomodo$ rake rails:freeze:gems
项目创建好了,rails版本也lock了

下面使用一个restful_authentication插件

~/NetBeansProjects/pomodo$ ./script/plugin install -r 3072 http://svn.techno-weenie.net/projects/plugins/restful_authentication/

+ ./README
+ ./Rakefile
+ ./generators/authenticated/USAGE
...output omitted...

确定已经显示以上信息,这个插件是创建用户登录功能的
下面我们通过插件生成了user和sessions

~/NetBeansProjects/pomodo$./script/generate authenticated user sessions
修改user的迁移文件
           db\migrate\20081007123744_create_users.rb
class CreateUsers < ActiveRecord::Migration
  def self.up
    create_table "users", :force => true do |t|
      t.column :login,                     :string
      t.column :email,                     :string
      t.column :first_name,                :string, :limit  => 80
      t.column :last_name,                 :string, :limit  => 80
      t.column :crypted_password,           :string, :limit => 40
      t.column :salt,                       :string, :limit => 40
      t.column :created_at,                :datetime
      t.column :updated_at,                :datetime
      t.column :remember_token,             :string
      t.column :remember_token_expires_at, :datetime
    end
  end
  def self.down
    drop_table "users"
  end
end



修改数据库配置文件
database.yml
development:
  adapter: mysql
  encoding: utf8
  database: pomodo_development
  username: root(输入自己正确的mysql用户名)
  password: root(输入自己正确的mysql密码)
  socket: /var/run/mysqld/mysqld.sock

迁移文件
~/NetBeansProjects/pomodo$rake db:create:all (创建数据库)
~/NetBeansProjects/pomodo$rake db:migrate(执行迁移)
~/NetBeansProjects/pomodo$ mysql -uroot -p

mysql> show databases;
Database              |
+-----------------------+
| information_schema    |
| mysql                 |
| omdb_dev              |
| pomodo_development    |
| pomodo_production     |
| pomodo_test   
mysql> use pomodo_development;
mysql> select * from users;


修改模型user,增加如下内容
app\models\user.rb
...
  # prevents a user from submitting a crafted form that bypasses
  # activation
  # anything else you want your user to change should be added
  # here.
  attr_accessible :login, :email, :password,
    :password_confirmation, :first_name, :last_name
...



增加 RESTful routes

config\routes.rb
ActionController::Routing::Routes.draw do |map|
  # The priority is based upon order of creation:
  # first created -> highest priority.
...
  # Sample resource route (maps HTTP verbs to controller actions
  # automatically):                          
  #   map.resources :products                              
  map.resources :users
  map.resource :session
signup URL
  map.signup '/signup', :controller => 'users',
    :action => login URL
  map.login '/login', :controller => 'sessions',
    :action => 'new'
logout URL
  map.logout '/logout', :controller => 'sessions',
    :action => 'destroy'
  # Sample resource route with options:
  #   map.resources :products,
  #     :member => { :short => :get, :toggle => :post },
  #     :collection => { :sold => :get }
...
end

Modifying the includes and before_filter
as instructed by the comments

app\controllers\sessions_controller.rb
app\controllers\users_controller.rb
分别在上面两个控制器中,删除include AuthenticatedSystem
把include AuthenticatedSystem加到app\controllers\application.rb

并将protect_from_forgery 注释

app\controllers\application.rb
# Filters added to this controller apply to all controllers in
# the application. Likewise, all the methods added will be
# available for all controllers.
class ApplicationController < ActionController::Base
  helper :all # include all helpers, all the time
  include AuthenticatedSystem                                      
  # See ActionController::RequestForgeryProtection for details
  # Uncomment the :secret if you're not using the cookie session
  # store
  # TODO - this will be uncommented once we explain sessions
  # in iteration 5.
  # protect_from_forgery
  # :secret => 'dd92c128b5358a710545b5e755694d57'
end



完成修改后启动web服务器,我们这里用默认的webrick
~/NetBeansProjects/pomodo$  ./script/server webrick
使用http://localhost:3000/signup 访问注册用户
http://localhost:3000/login 登录

,下篇将是详细介绍flex编译



  • 大小: 9.2 KB
分享到:
评论
3 楼 koalant 2008-10-27  
做 Flex 和 Rails 开发都有一段时间了,但是我现在还没来得及看那本 Flexible Rails, 真该翻翻了。
2 楼 rubyac 2008-10-27  
qichunren 写道
你这还没有写完吧,这个只能说是“用estful Authentication插件来用户登录"的例子,期待你的完善。

这还没涉及到flex编译呢,下篇就是flex编译详解了
1 楼 qichunren 2008-10-27  
你这还没有写完吧,这个只能说是“用estful Authentication插件来用户登录"的例子,期待你的完善。

相关推荐

    flex on rails文档

    ### Flex on Rails 文档知识点详解 #### 一、关于 Flexible Rails **Flexible Rails** 是一个旨在结合 **Flex** 和 **Rails** 技术优势的框架。通过将这两者结合,可以构建出高度交互且功能丰富的 Web 应用程序。本...

    Flexible Rails: Flex3 on Rails2

    通过上述内容,我们可以看到,《Flexible Rails: Flex 3 on Rails 2》不仅是一本关于如何结合使用Flex 3和Rails 2的技术书籍,更是一本深入浅出地讲解这两种技术如何协同工作的指南。对于那些希望构建高效且美观的...

    Ruby on Rails实例开发

    Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和可读性,同时强调“约定优于配置”的原则。在本实例开发中,我们将探讨如何...

    ruby on rails 实例代码

    Ruby on Rails,简称Rails,是一个基于Ruby语言的开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在使Web开发更高效、更简洁。在本实例代码中,我们将深入探讨如何利用Rails进行数据库操作,...

    ruby on rails 实例depot

    Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率,简化Web应用开发流程。Depot是一个经典的Rails教程示例项目,它展示了如何...

    Ruby on Rails入门经典-例子

    Ruby on Rails,简称RoR,是由David Heinemeier Hansson基于Ruby语言开发的一款开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和可读性,使得开发者能够更快速地构建功能丰富的web...

    ruby on rails 实例1

    在你提供的资源"ruby on rails 实例1"中,我们可以推测这可能是你老师的教学材料,可能包含了一些基础到进阶的RoR应用实例,帮助学生理解和实践RoR的开发。由于没有具体的文件内容,我将根据一般RoR学习路径来解释...

    Ruby On Rails开发实例-源代码

    实践是掌握任何技术的关键,因此,建议你在阅读文档后,动手运行这个实例,跟随代码一步步操作,遇到问题时查阅官方文档或社区资源,这样能更好地理解Ruby on Rails的精髓。祝你学习愉快,早日成为Rails开发高手!

    flex 與 rails 開發的問題單管理sample

    Rails是Ruby on Rails的简称,是一个基于Ruby语言的开源Web开发框架,遵循MVC(Model-View-Controller)架构模式。Rails强调DRY(Don't Repeat Yourself)原则,提倡简洁、高效的代码,以及灵活的数据驱动开发。 在...

    ruby on rails最新版

    Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和代码的可读性。Rails以其“约定优于配置”(Convention over Configuration)...

    Ruby on Rails Tutorial

    《Ruby on Rails Tutorial》中文版(原书第2版,涵盖 Rails 4) Ruby 是一门很美的计算机语言,其设计原则就是“让编程人员快乐”。David Heinemeier Hansson 就是看重了这一点,才在开发 Rails 框架时选择了 Ruby...

    ruby on rails 101

    《Ruby on Rails 101》是一本介绍Ruby on Rails(简称RoR或ROR)的基础书籍,旨在为初学者提供一个全面而深入的学习框架。本书由Peter Marklund编写,包含了五天课程的演示文稿和相关资料,覆盖了从安装到实际应用...

    jRuby On Rails WEB2.0

    《jRuby on Rails WEB2.0》是一部由Ola Bini撰写的书籍,深入探讨了如何将Ruby on Rails这一敏捷开源框架与Java平台相结合,以构建高效、灵活的Web 2.0应用。作为JRuby项目的领头人和核心开发者,Ola Bini以其丰富的...

    Ruby on Rails Guides v2 - Ruby on Rails 4.2.5

    ### Ruby on Rails Guides v2 - Ruby on Rails 4.2.5 #### 一、重要概念及基础假设 - **重要概念**:本指南旨在帮助读者深入理解Ruby on Rails(以下简称Rails)4.2.5版本的核心功能与最佳实践。 - **基础假设**:...

    Ruby on Rails安装包全集(Linux)

    Ruby on Rails是一款基于Ruby语言的开源Web开发框架,它遵循MVC(模型-视图-控制器)架构模式,简化了Web应用的开发流程。在Linux环境下安装Ruby on Rails需要一系列的依赖包和步骤,本资源包提供了所需的所有组件,...

    flex rails

    #### 知识点一:Flex与Ruby on Rails的集成原理及优势 《FlexibleRails》这本书主要讲述了如何将Flex与Ruby on Rails进行整合,实现强大的Web应用程序。Flex是一种用于构建丰富的互联网应用程序(RIA)的技术,而...

    ruby on rails 3 tutorial.pdf

    《Ruby on Rails 3 Tutorial》是一本专门为初学者设计的指南,旨在帮助读者快速掌握Ruby on Rails这一强大的Web开发框架。Ruby on Rails(简称Rails)是基于Ruby语言的一个开源框架,它采用MVC(Model-View-...

    Ruby On Rails中文教材(PDF)

    Ruby on Rails,简称Rails,是一款基于Ruby语言的开源Web应用框架,它遵循MVC(Model-View-Controller)架构模式,旨在简化Web应用程序的开发。Rails由David Heinemeier Hansson于2004年创建,它提倡“约定优于配置...

Global site tag (gtag.js) - Google Analytics