我尝试将应用程序从3.2升级到rails 4.我认为所有的宝石冲突此刻已经解决,但后来我知道它可能会再次发生.
虽然我尝试"捆绑exec rails s"并在浏览器中打开应用程序转到app home索引,但它给了我这个错误:
IOError(未打开以供阅读)
任何人都可以帮忙吗?非常感谢.
这是我使用的宝石列表:
gem 'rails', '4.0.1'
gem 'sass-rails', '~> 4.0.0'
gem 'coffee-rails', '~> 4.0.0'
gem 'uglifier', '>= 1.3.0'
gem 'jquery-rails'
gem 'jbuilder', '~> 1.2'
# add these gems to help with the transition:
gem 'protected_attributes'
gem 'rails-observers'
gem 'actionpack-page_caching'
gem 'actionpack-action_caching'
gem "activerecord-session_store"
Run Code Online (Sandbox Code Playgroud)
这是控制台的日志消息:
Started GET "/" for 127.0.0.1 at 2013-11-06 20:16:27 +1100
Processing by HomeController#index as HTML
PCategory Load (0.5ms) SELECT "p_categories".* FROM "p_categories"
Rendered home/index.html.erb within layouts/application (4.1ms)
Completed 500 Internal Server …Run Code Online (Sandbox Code Playgroud) 我得到了一个如下结构的文档.我的问题是如何在数据库端进行嵌套部分"角色"验证.我的要求是:
如果创建了角色,则为角色存在name和created_by.
{
"_id": "123456",
"name": "User Name",
"roles": [
{
"name": "mobiles_user",
"last_usage_at": {
"$date": 1457000592991
},
"created_by": "987654",
"created_at": {
"$date": 1457000592991
}
},
{
"name": "webs_user",
"last_usage_at": {
"$date": 1457000592991
},
"created_by": "987654",
"created_at": {
"$date": 1457000592991
}
},
]
}
Run Code Online (Sandbox Code Playgroud)目前,我只针对那些没有嵌套的属性执行以下操作:
db.createCollection( "users",
{ "validator" : {
"_id" : {
"$type" : "string"
},
"email" : {
"$regex" : /@gmail\.com$/
},
"name" : {
"$type" : "string"
}
}
} )
Run Code Online (Sandbox Code Playgroud)
任何人都可以建议如何进行嵌套文档验证?