我正在制作一张个人资料图片,用户可以从Linkedin获取它或上传它自己的。
当用户从LinkedIn获取时,它通过image_tag
显示:
image_tag(Base64::decode64(field_value), :alt => "profile_pic",:id => "profile_pic")
但用户也可以上传图片:
file_field_tag("profile_pic")
这些代码来自apply_helper.rb:
def render_profile_image(field, alt, title)
if field.nil?
content_tag(:span, title) + tag(:br) + image_tag("user.png", :alt => alt) + tag(:br) + \ file_field_tag("profile_pic") + tag(:br) + content_tag(:small, t("apply.create.labels.profile_pic")) + tag(:br)
else
field_value = field["VALUE"]
content_tag(:span, title) + tag(:br) + image_tag(Base64::decode64(field_value), :alt => "profile_pic",:id => "profile_pic") + tag(:br) + \
file_field_tag("profile_pic") + tag(:br) + content_tag(:small, t("apply.create.labels.profile_pic")) + tag(:br)
end
end
我希望在此之前这一点很清楚,但是当我申请时,一切都充满了。
在应用控制器中:
params["profile_pic"]
仅显示file_field_tag
中的内容,即使我将其删除,也只呈现image_tag
我无法看到的apply_controller
中的值。{{1}}
我感谢你的建议。
答案 0 :(得分:0)
如果对两个不同的字段使用相同的名称,它们将在params
数组中具有相同的名称。因此,最好为这两个字段使用单独的名称,例如profile_pic
和profile_pic_file_info
。
答案 1 :(得分:0)
我使用hidden_field_tag解决了这个问题。
hidden_field_tag('linkedin_pic',"example.url.com")