Ruby on Rails
Saturday, September 2, 2017
Ive been reading quite a few guides on this and my first attempt was not successful. What I have done so far is writern n a migration for the view and got that working:
Created a controller:
And a Model
And a View
Bit when I add it as a route and browse to the page I get
-- class UpcommingEvents < ActiveRecord::Migration[5.1]
def up
self.connection.execute %Q( CREATE OR REPLACE VIEW upcoming_events AS
SELECT v.name "Venue",
to_char(e.start_date,'Day') "Day",
e.start_time,
e.title "Event",
e.description
FROM events e,
venues v
WHERE v.id = e.venue_id
AND e.start_date
BETWEEN (CURRENT_DATE -INTERVAL '1 day')::date
AND (CURRENT_DATE + INTERVAL '7 day')::date
order by start_date, v.name
)
end
def down
execute "DROP VIEW upcoming_events"
end
end
def up
self.connection.execute %Q( CREATE OR REPLACE VIEW upcoming_events AS
SELECT v.name "Venue",
to_char(e.start_date,'Day') "Day",
e.start_time,
e.title "Event",
e.description
FROM events e,
venues v
WHERE v.id = e.venue_id
AND e.start_date
BETWEEN (CURRENT_DATE -INTERVAL '1 day')::date
AND (CURRENT_DATE + INTERVAL '7 day')::date
order by start_date, v.name
)
end
def down
execute "DROP VIEW upcoming_events"
end
end
class CurrentEventsController < ApplicationController
def index
end
end
def index
end
end
class CurrentEvent < ApplicationRecord
end
end
<p id="notice"><%= notice %></p>
<h1>Current_Events</h1>
<table>
<thead>
<tr>
<th>Venue</th>
<th>Day</th>
<th>Start Time</th>
<th>Event</th>
<th>Description</th>
<th colspan="3"></th>
</tr>
</thead>
<tbody>
<% current_event.each do |ce| %>
<tr>
<td><%= ce.venue %></td>
<td><%= ce.day %></td>
<td><%= ce.start_time %></td>
<td><%= ce.event %></td>
<td><%= ce.description %></td>
</tr>
<% end %>
</tbody>
</table>
<br>
<h1>Current_Events</h1>
<table>
<thead>
<tr>
<th>Venue</th>
<th>Day</th>
<th>Start Time</th>
<th>Event</th>
<th>Description</th>
<th colspan="3"></th>
</tr>
</thead>
<tbody>
<% current_event.each do |ce| %>
<tr>
<td><%= ce.venue %></td>
<td><%= ce.day %></td>
<td><%= ce.start_time %></td>
<td><%= ce.event %></td>
<td><%= ce.description %></td>
</tr>
<% end %>
</tbody>
</table>
<br>
NameError in CurrentEvents#index
Showing /home/ben/eventpuddle/eventpuddle/rails/eventpuddle/app/views/current_events/index.html.erb where line #18 raised:
undefined local variable or method `current_event' for #<#<Class:0x007f64a41d4740>:0x007f648d40ba48> Did you mean? current_events_index_url
Extracted source (around line #18):
17 <tbody>
18 <% current_event.each do |ce| %>
19 <tr>
20 <td><%= ce.venue %></td>
21 <td><%= ce.day %></td>
Rails.root: /home/ben/eventpuddle/eventpuddle/rails/eventpuddle
I also added to
config/application.rb
config.active_record.schema_format = :sql
and run 'rake db:migrate db:test:prepare'
Not sure where I am going wrong;(.
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/3bea81a3-91fd-480d-8076-0a315df90a3f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment