您的位置: 新闻频道 Ruby新闻
robbin 写道
Rails 2.1的第一个预览版本发布了,你可以从以下方式进行安装:

sudo gem install rails –source http://gems.rubyonrails.com/

Rails 2.1提供了很多新特性,例如:内建的时区支持,GEM包依赖关系分享,更好的缓存系统支持等等



Rails 2.1 的三个新特性

script/dbconsole

script/dbconsole 脚本允许用户使用Rails的控制台客户端连接到数据库。

如果需要连接到MySQL的生产数据库作一些操作,直接运行 RAILS_ENV=production script/dbconsole 就能登录到数据库服务器上并使用MySQL的命令行客户端。当然,这个脚本也同样在 PostgreSQL 和 SQLite 数据库运行。

要在当前Rails应用程序中使用这个新脚本,就要先升级到edge Rails,再运行 rake rails:update:script 。好好享受这个脚本的便利吧。


ActiveRecord migrations 的新方法 change_table

现在可以通过 change_table 代码块来完成对数据库表的修改。

    change_table :videos do |t|
      t.add_timestamps
      t.add_belongs_to :goat
      t.add_string :name, :email, :limit => 20
      t.remove_column :name, :email # takes multiple arguments
      t.rename :new_name
      t.string :new_string_column # executes against the renamed table name
    end


补充些要注意的事情:

* add_XXX 方法会添加一个新列,比如 add_string 会添加一个新的 string 类型的字段。
* Of course, add_timestamps 会添加神奇的 created_at 和 updated_at 的 datetime 类型的字段。
* remove_column 现在可以接受多个参数。
* rename 方法会重命名数据库表。

Rails2.1新特性之ActiveRecord::Base.create的变化

ActiveRecord::Base.create 现在可以像 ActiveRecord::Base.new 一样带上一个代码块参数了。

    @person = Person.create(params[:person]) do |p|
     p.name = 'Konata Izumi'
     p.age = 17
    end

评论 共 2 条 发表评论

neora 2008-05-14 14:13
Rails 进步太快了。相比起来Java框架社区真显得有些拖沓了。
zhoule 2008-05-14 01:49
change_table :videos do |t|
t.add_timestamps
t.add_belongs_to :goat
t.add_string :name, :email, :limit => 20
t.remove_column :name, :email # takes multiple arguments
t.rename :new_name
t.string :new_string_column # executes against the renamed table name
end
Java代码????
应该是Ruby 代码吧。

发表评论

您还没有登录,请登录后发表评论