2011-09-18 104 views
1

我有CRUD,当创建一个新的条目时,没有任何东西被保存,并且没有错误产生。我可以看到日志中发生的帖子。Ruby on Rails不保存岗位数据

控制器

def new 
    @article = Article.new 
    end 

    def create 
    @article = Article.new(params[:article]) 
    if @article.save 
     redirect_to @article 
    else 
     render :action => 'new' 
    end 
    end 

模型

class Article < ActiveRecord::Base 
    attr_accessible :title, :content end 

路线

map.resources :articles 

登录

Parameters: {"article"=>{"title"=>"Dive trip", "content"=>"hfigoo"}, "commit"=>"Save changes"} 

任何帮助表示赞赏:-)

+0

您是否在'rails console'中试过了? – David

+0

不知道,不知道该怎么办? – gilbert

+0

请显示表格 –

回答

1
$ script/console 
> a = Article.new({"title"=>"Dive trip", "content"=>"hfigoo"}) 
    => #<Article:..... 
> a.save 

当你看到从a.save为任何=> false=> true的响应。如果执行SQL,您应该能够在控制台中看到它。

如果必须在Heroku上运行它,你可以做

$ heroku console 

获得Heroku的平台上轨控制台。

+0

谢谢,保存从控制台只是文件的作品。 – gilbert

+0

它仍然没有从应用程序工作? – Travis

+0

但是,当我尝试保存像上面的参数,我得到这个。 a = Article.new(“article”=> {“title”=>“潜水之旅”,“content”=>“hfigoo”}) =>#

3

一个问题可能是它的验证失败。但是,根据代码我看不到任何。你可以做这样的事情

首先检查请求是否到了create方法,把一个简单的puts命令做到这一点。

如果请求的方法使用了@ article.save!而不是@ article.save,这会告诉你是否有任何验证错误