0
我有一個叫做文章的模型,它有一個字符串字段,允許用戶將他們的文章設置爲草稿。當選擇草稿並且用戶更新帖子時,我希望它返回到文章編輯頁面,就好像用戶選擇了發佈的選項一樣,然後我希望將用戶重定向到文章索引頁面。Rails將更新草稿保存在控制器中?
問題是如果草稿選項被選中,我無法獲得文章更新並重定向回帖子。我以錯誤的方式接近這個嗎?
遷移文件
def change
add_column :articles, :status, :string, default: 'Draft'
end
articles.rb
scope :submitted, lambda { where('status = ?', 2) }
scope :draft, lambda{ where('status = ?', 1) }
def is_draft?
self.draft
end
文章控制器
def update
case @article.status
when 1
@article.status = 'Draft'
else 2
@article.status = 'Published'
end
if @article.status == 1
@article = article.find(params[:id])
flash[:notice] = "Successfully Updated" if @article.update_attributes(params[:article])
respond_with(@article, :location => edit_article_path)
else
@article = article.find(params[:id])
flash[:notice] = "Successfully Updated" if @article.update_attributes(params[:article])
respond_with(@article, :location => articles_path)
end
end