2011-09-18 139 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,這會告訴你是否有任何驗證錯誤