Ruby on Rails Friday, October 24, 2014

here is the  schema


ActiveRecord::Schema.define(version: 20141016020227) do

  create_table "articles", force: true do |t|
    t.string   "title"
    t.text     "text"
    t.datetime "created_at"
    t.datetime "updated_at"
    t.string   "time"
    t.string   "age"
    t.string   "el"
    t.string   "experience"
  end

  create_table "shops", force: true do |t|
    t.string   "title"
    t.text     "text"
    t.datetime "created_at"
    t.datetime "updated_at"
  end

end

and yeah i meant new table. 

On Tuesday, October 21, 2014 9:56:19 AM UTC+11, Aspiring.Student.programmer wrote:
Hey

I am adding another database to my first one and i created the html to work showing the data but when i want to create a new entry this error occurs. I have a new controller with everything in it but not sure why it doesnt work.


ActionController::UrlGenerationError in Shopping#new

Showing C:/Sites/blog/app/views/shopping/new.html.erb where line #2 raised:

No route matches {:action=>"show", :controller=>"shopping"} missing required keys: [:id]

Extracted source (around line #2):

1  2  3  4  5            
<h1>Shopping#new</h1>
<%= form_for @shop, url: shopping_path do |f| %>
<p>
<%= f.label :title %><br>
<%= f.text_feild :title %>

Rails.root: C:/Sites/blog

Application Trace | Framework Trace | Full Trace
app/views/shopping/new.html.erb:2:in `_app_views_shopping_new_html_erb___572466137_45190848'

Request

Parameters:

None

Response

Headers:

None


Controller:


class ShoppingController < ApplicationController
def new

@shop = Shop.new

end

def create
@shop = Shop.new(shop_params)

@shop.save
redirect_to @shop
end

def show
@shop = Shop.find(params[:id])
end

def index
@shopping = Shop.all
end




private
def shop_params
params.require(:shop).permit(:title, :text)
end

end


HTML FILE

<h1>Shopping#new</h1>
<%= form_for @shop, url: shopping_path do |f| %>
<p>
<%= f.label :title %><br>
<%= f.text_feild :title %>
</p>

<p>
<%= f.label :text %><br>
<%= f.text_area :text %>
</p>

<p>
<%= f.submit %>
</p>

<% end %>
<%= link_to 'Back', shopping_path %>





Regards




--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/d6758e06-1573-4431-9b82-87169d4ed426%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment