fuliangliang的Blog

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。

fuliangliangID:fuliangliang
62310次访问,排名1608好友1人,关注者3
fuliangliang的文章
原创 100 篇
翻译 0 篇
转载 25 篇
评论 24 篇
fuliang的公告

我的联系方式:20542606

Email:fuliangliang@gmail.com


最近评论
tbsc3:我也遇到了这个问题,如果配1 M就有用,大于2M就还是默认的 不知道你有没有解决呀,教教我
zhoufeng345678:Thank u!
lyzhouhailong:很好!
GoEastward:顶下,SHH2,不错的例子,如果能配上分页Book列表的分页显示界面例子就更好了。
uhlanme:写得不错,参考了,呵呵
文章分类
收藏
    相册
    净月潭一日游
    页面图片
    日历
    文章收藏
    我的JavaEye博客
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 Rails Cookbook翻译(六)收藏

    新一篇: 参加Java版聚 | 旧一篇: Rails Cookbook翻译(五)

    (本翻译纯粹为了学习,切勿用于商业目的,转载请指明出处:http://blog.csdn.net/fuliangliang)

    Rails Cookbook翻译(六)

    处方3.6 使用A ctive Record访问你的数据

    问题:

     你有已经有一个向控制器提交参数的表单。你想在控制器的一个函数里,创建基于这些参数值的Active Record对象。

    解决方案:

    例如,你有了下面一个在schema.rb里定义的一个authors表:

     

    db/schema.rb

     

    ActiveRecord::Schema.define(:version => 1) do

       create_table “author”, :force => true do |t|

         t.column “first_name”, :string

         t.column “last_name”, :string

         t.column “email” :string

         t.column “phone” :string

       end

    end

     

    app/models/author.rb里建一个相应的模型:

     class Author < ActiveRecord::Base

    end

     

    你的创建作者的表单包含以下内容:

    <p style="color: green"><%= flash[:notice] %></p>

     

    <h1>Create Author</h1>

     

    <form action="create" method="post">

      <p> First Name:

      <%= text_field "author", "first_name", "size" => 20 %></p>

     

      <p> Last Name:;

      <%= text_field "author", "last_name", "size" => 20 %></p>

     

      <p> Email:;

      <%= text_field "author", "email", "size" => 20 %></p>

     

      <p> Phone Number:;

      <%= text_field "author", "phone", "size" => 20 %></p>

     

      <input type="submit" value="Save">

    </form>

     

    app/controllers/authors_controller.rb中添加一个create方法创建了一个新的Author对象

    def create

      @author = Author.new params[:author]

      if @author.save

        flash[:notice] = 'An author was successfully created.'

         redirect_to :action => 'list'
       else
           flash[:notice] = ‘Failed to create an author.’
           Render :action => ‘new’
       end

      end

    讨论:

    Authors控制器中,我们通过调用Active Record的构造函数创建了一个Author实例。这个构造函数被传递了一个与author表相关的属性值组成的hash表,在这个例子中我们将author hash表作为实参传递给形参为params hash的表。这个author hash表包含了我们在创建author表所填的所有的值。

     当我们试图保存这些数据的时候,他会执行真正的SQL插入操作。如果没有什么错误的话,我们创建了一个flash信息会指示成功,并且重定向到list动作。如果或许由于没有通过验证,对象没有被保存,我们就会重新呈现那个表单。

     

    你还可以参考:

    3.8

    发表于 @ 2007年04月05日 16:36:00|评论(loading...)|编辑

    新一篇: 参加Java版聚 | 旧一篇: Rails Cookbook翻译(五)

    评论

    #highball 发表于2007-04-14 20:09:40  IP: 221.196.132.*
    der啊 老连
    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © fuliang