client = Client.readonly.first client.visits += 1 client.save
不错的官方方法。我的需求是这样的:
现在有两个数据库,一套代码,两个环境。
在代码中 model 分别指定了不同的环境
例如:Spell 指向的是 dev1 环境,Item 指向的是 dev2 环境
dev1 我链接的是数据库 A
dev2 我链接的是数据库 B
我可以在页面上操作 Spell 和 item 的数据,但是我不希望 item 的数据被修改 所以我想有没有方法在 Item 这个 model 中设置一个全局的方法让其不能修改和删除
虽然官方的方法可以只读数据,但是对我来说我是想用全局的方式来设置而不是针对某一个数据来设置
这个是可以的我的配置如下:
在 environment.rb 文件中加上
MongoMapper.setup(Rails.configuration.database_configuration,"res",:logger => Rails.logger)`
res:
host: 127.0.0.1
port: 27017
username:
password:
database: app_name
然后在model中写好model
class User
include MongoMapper::Document
end
ok, 你可以使用user 这个model 了
现在跑起来,我猜原因是我给我 ruby 路径不对我的修改如下 :
passenger_ruby /Users/mile001/.rvm/bin/ruby-1.9.3-p125; passenger_ruby /Users/mile001/.rvm/rubies/ruby-1.9.3-p125/bin/ruby;
到目前: 前一个路径我是通过 cd ~/.rvm/bin 目录中然后找到当前版本 后一个路径我是能过 "which ruby" 命令来取得的他指向的是: ruby-1.9.3-p125@ -> /Users/mile001/.rvm/wrappers/ruby-1.9.3-p125/ruby
在这里 /Users/mile001/.rvm/rubies/ruby-1.9.3-p125/bin/ruby; 和 /Users/mile001/.rvm/wrappers/ruby-1.9.3-p125/ruby 中的 ruby 用处还不样是吗?
#1 楼 @fresh_fish 我的意思是:现在表中的字段我都不想设置成主键。我想用表中不存在的虚拟的字段做为主键。
#3 楼 @suffering 是的这个可以自定义一些按钮,但是我想在 doashbard 这个页面来自定义。还有其它的办法么?找了许久也没有找到!
我找到一种方法来处理我的需求,给大家分享一下: http://pullmonkey.com/2008/4/21/ruby-on-rails-multiple-database-connections/
#1 楼 @tassandar 真的是好烦..每次都要跳一下。就没有其它办法了?
#3 楼 @andrew_zyl 你有更好的方式。那参考一下咯![email protected] ty
#5 楼 @dreamrise 嗯,这个的确可以。不过现在这个 (activeadmin) 开源的好像显示不出来!