Here is my stackoverflow question I posted

Here is the question if you do not want to visit the website

I am trying to create a form that updates 2 tables in my database. I'm not
quite sure how to build this contact form quite yet. So my first short term
goal is to simply update my `contact_requests` and `users` tables. I am
aiming to do a `one to many` relationship between `users` and
`contact_requests`. This allows one `user` to have many `contact_requests`.
I am new to rails so I feel like there are gaps in my code and I am making
some mistakes as well.

I currently have a `user` table and a `contact_request` table:

![enter image description here][1]

`user_id` from the `contact_requests` table is a foreign key that
references ``

Here is by current schema code:

     ActiveRecord::Schema.define(version: 20141127114323) do
       create_table "contact_requests", force: true do |t|
         t.datetime "created_at", null: false
         t.datetime "updated_at", null: false
         t.string "message", null: false
         t.integer "user_id"

       add_index "contact_requests", ["user_id"], name:
"index_contact_requests_on_user_id", using: :btree

       create_table "users", force: true do |t|
         t.datetime "created_at", null: false
         t.datetime "updated_at", null: false
         t.string "first_name", null: false
         t.string "last_name", null: false
         t.string "email", null: false
         t.string "phone_number"

Here are my models and controllers:

     class User < ActiveRecord::Base
       has_many :contact_requests
       # validate the presence of the attributes
       validates(:first_name, presence: true)
       validates(:last_name, presence: true)
       validates(:email, presence: true)

     class ContactRequest < ActiveRecord::Base
       belongs_to :user
       validates :user_id, presence: true
       validates :message, presence: true, length: { maximum: 500 }

     class ContactController < ApplicationController
       def new
       @user =
       @contact_request =

I am getting this error:

![enter image description here][2]


     <%= form_for(:contact, remote: true, class: "contact-input") do |f| %>
           <div class="col-md-12">
             <div class="col-md-6">
               <div class="contact-input-margin form-group">
                 <%= f.text_field(:user, :first_name, class: "form-control",
placeholder: "First name")%>
               <div class="contact-input-margin form-group">
                 <%= f.text_field(:user, :last_name, class: "form-control",
placeholder: "Last name") %>
               <div class="contact-input-margin form-group">
                 <%= f.email_field(:user, :email, class: "form-control",
placeholder: "Email") %>
               <div class="contact-input-margin form-group">
                 <%= f.telephone_field(:user, :phone_number, class:
"form-control", placeholder: "Phone number") %>
             <div class="contact-input-margin col-md-6">
               <div class="form-group">
                 <%= f.text_area(:contact_request, :message, class:
"form-control contact-margin", rows: "8", placeholder: "Message...") %>
           <%= f.submit(class: "btn btn-xl") %>
         <% end %>


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
To post to this group, send email to
To view this discussion on the web visit
For more options, visit

Search Discussions

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 1 of 1 | next ›
Discussion Overview
grouprubyonrails-talk @
postedNov 29, '14 at 11:14p
activeNov 29, '14 at 11:14p

1 user in discussion

Bradford li: 1 post



site design / logo © 2022 Grokbase