追踪:https://i.gyazo.com/6487f4eee162e8c2207d7fdb5fc4ef3b.png 我无法得到正在发生的事情,我在联系页面做了同样的过程,一切正常。有什么想法吗?
简档/ 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 DevMatch community and fill out your profile!</p>
<div class="well">
<%= render 'form' %>
</div>
</div>
</div>
简档/ _form.html.erb
<%= 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 %>
模式
create_table "profiles", force: :cascade do |t|
t.integer "user_id"
t.string "first_name"
t.string "last_name"
t.string "job_title"
t.string "phone_number"
t.string "contact_email"
t.text "description"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
配置文件控制器
class ProfilesController < ApplicationController
# GET to /users/:user_id/profile/new
def new
# Render blank profile details form
@profile = Profile.new
end
end
我在个人资料创建者页面中看到了rror。它说firstname是未定义的但是我尝试删除它然后它说laast名称是未定义的等等
如果我删除“&lt;%= render'形式'%&gt;”形成其他HTML,页面加载完美,但我需要一个表单,我正在尝试学习Ruby。遗憾
答案 0 :(得分:1)
配置文件ID的未定义方法`first_name':nil
它说firstname未定义,但我尝试删除它然后它 说姓氏是未定义的等等
您在个人资料表中没有列。您应该运行rake db:migrate
来迁移应解决问题的列。
此外,确保您的迁移正常运行,没有任何错误使用rake db:migrate:status
检查待处理迁移的状态