def create @addpost = Post.new params[:data] if @addpost.save flash[:notice] = "Post has been saved successfully." redirect_to posts_path else flash[:notice] = "Post can not be saved, please enter information." end end
Если сообщение не сохранено, оно перенаправляется на http://0.0.0.0:3000/posts , но мне нужно остаться страница с полями для ввода текста, чтобы пользователь мог вводить данные.
post model
class Post < ActiveRecord::Base has_many :comments validates :title, :presence => true validates :content, :presence => true validates :category_id, :presence => true validates :tags, :presence => true end
new method
def new @arr_select = { 1=>"One",2=>"Two" ,3=>"Three" } @categories_select = Category.all.collect {|c| [ c.category_name, c.id ] } end
new.html.erb
Add post
<%= form_tag :controller=>'posts', :action=>'create' do %> <%= label :q, :Title %> <%= text_field :data, :title, :class => :addtextsize %>
<%= label :q, :Content %> <%= text_area :data, :content, :rows=>10 , :class => :addtextarea %>
<%= label :q, :Category %> <%= select :data, :category_id, @categories_select %>
<%= label :q, :Tags %> <%= text_field :data, :tags, :class => :addtextsize %>
<%= label :q, :Submit %> <%= submit_tag "Add Post" %> <% end %>Что мне делать?