Ruby on Rails
Thursday, May 23, 2019
I will repost after I have changed the Race Table
Cheers Dave
On Fri, May 24, 2019 at 12:59 AM Ariel Juodziukynas <arieljuod@gmail.com> wrote:
Which line throws the error? show the error stackI'm not sure you can have a column named "class" while using activerecord. "class" is a reserved word (race.class should return the Race class, not an attribute value). It could be causing weird hidden problems.I still don't understand why you do `joins(:races)` since your Race model doesn't have an association with another race object.show the server log, you are omitting a lot of information--El jue., 23 may. 2019 a las 1:47, David Merrick (<merrickdav@gmail.com>) escribió:This is the error I get 'undefined method `fetch_value' for nil:NilClass'--This is what I ultimately want the page to look like See attacked picture
I have not include the last Database Table yet in my code. I know what the SQL statements look like. I just don't know how to do the select from the form and to get data to the Database and retrieve the results and display them
On Thursday, May 23, 2019 at 3:09:20 PM UTC+12, David Merrick wrote:I am trying to Querying Multiple Database table and display results in races index.html.erbSchema is thisActiveRecord::Schema.define(version: 2019_05_21_043953) docreate_table "days", force: :cascade do |t|t.date "day"t.integer "season_id"t.datetime "created_at", null: falset.datetime "updated_at", null: falset.index ["season_id"], name: "index_days_on_season_id"endcreate_table "races", force: :cascade do |t|t.boolean "display"t.text "racename"t.text "class"t.integer "season_id"t.integer "day_id"t.datetime "created_at", null: falset.datetime "updated_at", null: falset.index ["day_id"], name: "index_races_on_day_id"t.index ["season_id"], name: "index_races_on_season_id"endcreate_table "seasons", force: :cascade do |t|t.integer "year"t.datetime "created_at", null: falset.datetime "updated_at", null: falseendendA typical query in rails console --sandbox Querying all the races for that daySELECT day,class,racename FROM RACESINNER JOIN DAYS on days.id = races.day_idINNER JOIN SEASONS on days.season_id = seasons.idWHERE days.id = '46'"2019-04-20" "Pee Wee" "Pee Wee Div 2""2019-04-20" "Pee Wee" "Pee Wee Div 1""2019-04-20" "Juniors" "Juniors Div 2 Shilo Tocher Cup""2019-04-20" "Juniors" "Juniors Div 1 Gavin Tavendale Cup""2019-04-20" "Solo" "Solo's Robin McKinnon Plate""2019-04-20" "Side Cars" "Sidecars Tony Schafer Cup"I have this as the race modelclass Race < ApplicationRecordbelongs_to :seasonbelongs_to :dayclass << selfdef with_season(seasons)joins(:seasons).where(seasons: {id: seasons})enddef with_day(days)joins(:days).where(days: {id: days})enddef with_race(races)joins(:races).where(races: {id: races})endendendI want to select the Season ,the day and the racewith something like this in races index.html.erb<div class="control-group"><%= f.label :day_id , class: 'control-label' %><div class='controls'><%= collection_select(:race, :day_id, Day.all, :id, :day, {}, {:multiple => false}) %></div></div>So far I have this for races index.html.erb<p id="notice"><%= notice %></p><h1>Races</h1><table><thead><tr><th>Display</th><th>Racename</th><th>Class</th><th>Season</th><th>Day</th><th colspan="3"></th></tr></thead><tbody>@races = Race.with_season(params[:season_id]).with_day(params[:day_id]).with_race(params[:_id])<% @races.each do |race| %><tr><td><%= race.display %></td><td><%= race.racename %></td><td><%= race.class %></td><td><%= race.season %></td><td><%= race.day %></td><td><%= link_to 'Show', race %></td><td><%= link_to 'Edit', edit_race_path(race) %></td><td><%= link_to 'Destroy', race, method: :delete, data: { confirm: 'Are you sure?' } %></td></tr><% end %></tbody></table><br><%= link_to 'New Race', new_race_path %>Any Questions or suggestions just post pleaseCheers Dave
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/4826d939-50b5-4ebe-aa29-1b224849ded6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
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/CAPS3bcBVDimWs2ELnRDmYTreqTAS%2Biw4Gh0n0VOiXo7-einWFw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
Dave Merrick
TutorInvercargill
Cell 027 3089 169
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/CA%2B%3DMcKZHE7VE%3DPHYt%2BXoc79B%3DNcBeJzrQXMdP4UVhi8kqFuNUA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment