dimanche 3 avril 2016

Getting a missing template error in Ruby

I am new to Ruby and am getting the below error when clicking a link that should render a form used to create a user profile. I really appreciate any help with this.

Missing template profiles/new, application/new with {:locale=>[:en], :formats=>[:html], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :jbuilder, :coffee]}. Searched in: * "/home/ubuntu/workspace/app/views" * "/usr/local/rvm/gems/ruby-2.3.0/gems/devise-3.4.1/app/views"

models/profile.rb

class Profile < ActiveRecord::Base
  belongs_to :user
end

controllers/users/profiles_controller.rb

class ProfilesController < ApplicationController
  def new
    # form where a user can fill out their own profile.
    @user = User.find( params[:user_id] )
    @profile = @user.build_profile
  end
end

app/views/profiles/new.html.erb

<div class="row">
  <div class="col-md-6 col-md-offset-3">
    <h1 class="text-center">Create Your Profile</h1>
    <p class="text-center">Be a part of the Dev Match community and fill out        your profile!</p>
<div class="well">
  <%= form_for @profile, url: user_profile_path do |f| %>
    <div class="form-group">
      <%= f.label :first_name %>
      <%= f.text_field :first_name, class: 'form-control' %>
    </div>
    <div class="form-group">
      <%= f.label :last_name %>
      <%= f.text_field :last_name, class: 'form-control' %>
    </div>
    <div class="form-group">
      <%= f.label :job_title %>
      <%= f.select :job_title, ['Developer', 'Entrepreneur', 'Investor'], {}, class: 'form-control' %>
    </div>
    <div class="form-group">
      <%= f.label :phone_number %>
      <%= f.text_field :phone_number, class: 'form-control' %>
    </div>
    <div class="form-group">
      <%= f.label :contact_email %>
      <%= f.text_field :contact_email, class: 'form-control' %>
    </div>
    <div class="form-group">
      <%= f.label :description %>
      <%= f.text_area :description, class: 'form-control' %>
    </div>
    <div class="form-group">
      <%= f.submit "Update Profile", class: 'btn btn-primary' %>
    </div>
  <% end %>
</div>

config/locales/routes.rb

Rails.application.routes.draw do
  devise_for :users, controllers: { registrations: 'users/registrations' }
   resources :users do
    resource :profile
   end
   resources :contacts
  get '/about' => 'pages#about'
  root 'pages#home'
end

Aucun commentaire:

Enregistrer un commentaire