Ruby on rails 3 铁路3号及;回形针问题

Ruby on rails 3 铁路3号及;回形针问题,ruby-on-rails-3,paperclip,Ruby On Rails 3,Paperclip,我对rails非常陌生,我试图让回形针在我的网站上为用户配置文件工作。我在gemfile中安装了回形针gem,并安装了捆绑包。我在使用:has_attached_文件时遇到问题,所以我使用了“rails plugin install github/path/to/paperclip.git”并重新启动了webrick。在那之后,一切似乎都在工作,直到呈现我的新表单,并给我上传文件的选项 当我尝试将照片上载到用户配置文件时,它只会将我带回用户页面,而不会告诉我照片已成功更新,也不会显示我新上载的图

我对rails非常陌生,我试图让回形针在我的网站上为用户配置文件工作。我在gemfile中安装了回形针gem,并安装了捆绑包。我在使用:has_attached_文件时遇到问题,所以我使用了“rails plugin install github/path/to/paperclip.git”并重新启动了webrick。在那之后,一切似乎都在工作,直到呈现我的新表单,并给我上传文件的选项

当我尝试将照片上载到用户配置文件时,它只会将我带回用户页面,而不会告诉我照片已成功更新,也不会显示我新上载的图像。如果您更改了姓名或电子邮件地址,它会对其进行调整。它看起来不像是将图像放入Github上的回形针自述文件中列出的路径。这是我没有看到的配置文件吗

我运行了“rails生成回形针用户照片”,下面是一些相关代码:

从models/user.rb

class User < ActiveRecord::Base
  attr_accessible :name, :email

  email_regex = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i
  validates :name,  :presence   => true,
                    :length     => { :maximum => 50 }
  validates :email, :presence   => true,
                    :format     => { :with => email_regex },
                    :uniqueness => { :case_sensitive => false }

  #code below tells rails that our users have photos
  has_attached_file :photo
end
class用户true,
:length=>{:max=>50}
验证:email,:presence=>true,
:format=>{:with=>email_regex},
:唯一性=>{:区分大小写=>false}
#下面的代码告诉rails我们的用户有照片
是否已附上文件:照片
结束
从views/users/show.html.erb:

<b>Username: </b><%= @user.name %>
<p><b>Email Address: </b><%= @user.email %></p>
<p><b>Avatar: </b><% if @user.photo? %><%= image_tag @user.photo.url %><% else %>No      Photo Uploaded!<% end %></p>
用户名:
电邮地址:

阿凡达:没有上传照片

从views/users/_form.html.erb

<% form_for :user, @user, :url => user_path, :html => { :multipart => true } do |f| %>
  <p>
    <%= f.label :name.to_s << ': ' %>
    <%= f.text_field :name %>
  </p>
  <p>
    <%= f.label 'Email Address:' %>
    <%= f.text_field :email %>
  </p>

  <p>
    <%= f.label :Avatar.to_s << ': ' %>
    <%= f.file_field :photo %>
  </p>
  <p>
    <%= f.submit 'Save' %>
  </p>
<% end %>
<% form_for @user, :html => { :multipart => true } do |f| %>
  <p>
    <%= f.label :name.to_s << ': ' %>
    <%= f.text_field :name %>
  </p>
  <p>
    <%= f.label 'Email Address:' %>
    <%= f.text_field :email %>
  </p>

  <p>
    <%= f.label :Avatar.to_s << ': ' %>
    <%= f.file_field :photo %>
  </p>
  <p>
    <%= f.submit 'Save' %>
  </p>
<% end %>
user_path,:html=>{:multipart=>true}do | f |%>

“已成功创建用户。”)}
**为简洁起见,删除了代码**
结束
结束
结束

一些问题:在
rails生成回形针用户照片之后,是否运行了
rake db:migrate
?在你的控制器中,你是否真的有一个
show
方法来加载保存的用户并显示照片


另外,要显示
:注意
消息,您需要将其添加到应用程序模板中的某个位置,我已经修复了此问题。这个问题似乎是我在新用户和编辑用户屏幕上使用的_formpartial的问题。我在最初的问题中留下了错误的模板代码,我将在这里发布修复代码。已删除:user和:url=>值

从/views/user/_form.html.erb

<% form_for :user, @user, :url => user_path, :html => { :multipart => true } do |f| %>
  <p>
    <%= f.label :name.to_s << ': ' %>
    <%= f.text_field :name %>
  </p>
  <p>
    <%= f.label 'Email Address:' %>
    <%= f.text_field :email %>
  </p>

  <p>
    <%= f.label :Avatar.to_s << ': ' %>
    <%= f.file_field :photo %>
  </p>
  <p>
    <%= f.submit 'Save' %>
  </p>
<% end %>
<% form_for @user, :html => { :multipart => true } do |f| %>
  <p>
    <%= f.label :name.to_s << ': ' %>
    <%= f.text_field :name %>
  </p>
  <p>
    <%= f.label 'Email Address:' %>
    <%= f.text_field :email %>
  </p>

  <p>
    <%= f.label :Avatar.to_s << ': ' %>
    <%= f.file_field :photo %>
  </p>
  <p>
    <%= f.submit 'Save' %>
  </p>
<% end %>
{:multipart=>true}do | f |%>


我确实运行了rakedb:migrate来创建额外的列。def show@user=user.find(params[:id])--这是我从用户控制器执行的显示操作。结束