我剛剛在rails上學了2周左右,我是初學者,所以對我來說太難了。編輯後,帖子仍然沒有更新
我創建了一個博客,其使用created_at屬性進行鏈接,例如:
http://localhost:3000/posts/2014/01/07
我的問題是,當我嘗試編輯後,我可以修改,但它不會更新。 我有一個帖子「你好」,當我將它編輯爲「Hello world」時,它仍然是「你好」。
這裏是我的文件:
的routes.rb
get "posts/homepage"
root 'posts#homepage'
resources :posts
match 'posts/:year/:month/:day', to: 'posts#show', via: [:get, :patch]
posts_controller.rb
def show
@post = Post.find_by(params[:year], params[:month], params[:day])
end
def edit
@post = Post.find(params[:id])
end
def update
@post = Post.find(params[:id])
if @post.update(post_params)
redirect_to @post
else
render 'edit'
end
end
post.rb
def to_param
created_at.strftime('%Y/%m/%d')
end
對不起,因爲我的英語不好,這使我頭痛......我c an't太瞭解路線
這是應用程序\意見\ posts_form.html.erb,我呈現「這種形式爲新的行動和編輯:
<%= form_for @post do |form| %>
<% if @post.errors.any? %>
<div id='error_explanation' %>
<div class='alert alert-danger'><h3>エラーがあります、チェックしてください。</h3></div>
<ul>
<% @post.errors.full_messages.each do |message| %>
<li><%= message %></li>
<% end %>
</ul>
</div>
<% end %>
<p><%= form.text_area :text, cols: 75, rows: 15 %></p>
<p>
<%= link_to 'ホーム', root_path, class: 'btn btn-primary btn-lg', style: 'width: 100px' %>
<%= link_to '日記一覧', posts_path, class: 'btn btn-info btn-lg', style: 'width: 100px' %>
<%= form.submit :'登録する', class: 'btn btn-success btn-lg', style: 'width: 100px' %>
</p>
<% end %>
什麼是'post_params'? – user2503775
對不起,我忘了,post_params是posts_controller方法 '私人 高清post_params params.require(張貼).permit(:文本) end' –
嘗試'@ post.update_attributes(post_params)' – user2503775