2015-10-14 48 views
1

创建,查询,更新正在使用我的rails应用程序中的相同数据库。但是,destroy并不是从mongoDB中删除文档。 这里是我破坏方法:使用mongoDB销毁在rails 4上无法使用ruby的文档数据库

def destroy 
    @article = Article.find(params[:id]) 
    @article.destroy 
    redirect_to @article 
end 

而不删除总是被重定向我的文章页面。 这里是我的型号名称。
文章是我的数据库集合名称。
使用Mongoid构建mongoDB查询。

下面是链接代码删除
<%= link_to 'Delete', article_path(article),:method => :delete, data: { confirm: 'Are you sure?' } %>

然而,
db.articles.remove({"title":"somename"})
可以标题为 “somename” 删档。

+0

您是否试过[** delete **](https://github.com/mongomapper/mongomapper/blob/b965105ea203368234636df21c64f05358a467fb/lib/mongo_mapper/plugins/querying.rb#L43-57)方法'@article。 delete'? – chridam

+0

试过'@ article.delete' 它将我重定向到文章页面而没有删除。同样''article.destroy'也发生了一件名为'。 – ashr81

回答

0

更改咖啡脚本版本解决了这个问题!我认为这个解决方案值得分享!
在宝石文件改变咖啡脚本宝石文件:
gem 'coffee-script-source', '1.8.0'
和运行包用命令:
gem install coffee-script-source 和运行
bundle update coffee-script-source 和捆绑重新安装来改变咖啡脚本版本。
摧毁方法照常工作。

0

请尝试按照数据库而不是刚创建的对象销毁元素。这就是说,尽量避免@article.destroy,改用:

Article.find(params[:id]).destroy 

你只破坏这不是在DB节点对象的第一种方式,提醒它是给定节点的只是一个表象。

希望这个作品!祝你今天愉快!

+0

但他只是通过更新咖啡脚本来解决问题? –

相关问题