Formularz nie zapisuje danych

Witam

Mam taki problem:

Stworzyłem plik “new” w którym wypełniam formularz.
Następnie chcę wyświetlić to na nowej stronie (z użyciem szablonu “show”)

Niestety… tworzy się nowy plik ale wpisy z formularza się nie przenoszą…
W czym może być problem?


Plik new.html.erb

Dodaj post
<%= form_for(@ad,:url=>{:action=>‘create’}) do |f| %>

Name
<%= f.text_field :name %>

Description
<%= f.text_area :description %>

Price
<%= f.text_field :price %>

Seller
<%= f.text_field :seller_id %>

Email
<%= f.text_field :email %>

Img url
<%= f.text_field :img_url %>

<%= f.submit "Create" %>

<% end %>

Plik ads_controller

class AdsController < ApplicationController
def new
@ad = Ad.new
end

def create
@ad = Ad.new(params[:id])
@ad.save
redirect_to “/ads/#{@ad.id}”
end

def show
@ad = Ad.find(params[:id])
end

def index
@ads = Ad.find(:all)
end
end


Plik create.html.erb

Ad created!
View your ad <a href="/ads/<%= @ad.id %>">here</a>

Plik routes

Ads::Application.routes.draw do

match ‘/ads/new’, :to => ‘ads#new’
match ‘/ads/create’, :to => ‘ads#create’
match ‘/ads/:id’, :to => ‘ads#show’
match ‘/ads/’, :to => ‘ads#index’

match ‘:controller(/:action(:id(.:format)))’

end


Plik show

Name:<%= @ad.name %>

Description:<%= @ad.description %>

Price:<%= @ad.price %>

Seller Id:<%= @ad.seller_id %>

Email:<%= @ad.email %>

Foto:

Zamiast id podawaj całą tablicę danych:

def create @ad = Ad.new(params[:ad]) @ad.save redirect_to "/ads/#{@ad.id}" end