# Upload an image

**URL:** <https://www.ruby-forum.com/t/upload-an-image/152599>\
**Category:** Rails\
**Created:** [November 5, 2008, 2:03pm UTC](https://www.ruby-forum.com/t/upload-an-image/152599 "2008-11-05T14:03:23Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ishara\_G](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/i/e68b1a/32.png) [@Ishara\_G](https://www.ruby-forum.com/u/Ishara_G)\
**Post date:** [November 5, 2008, 2:03pm UTC](https://www.ruby-forum.com/t/upload-an-image/152599/1 "2008-11-05T14:03:23Z")

</div>

can anyone give me the code for upload an image,i try  
in various ways such as acts\_as\_attatchment plugin but  
it wasn’t work…now im in a big trouble,plz give me another  
solution to this

---

<div class="post-metadata">

**Author:** ![Ishara\_G](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/i/e68b1a/32.png) [@Ishara\_G](https://www.ruby-forum.com/u/Ishara_G)\
**Post date:** [November 5, 2008, 2:20pm UTC](https://www.ruby-forum.com/t/upload-an-image/152599/2 "2008-11-05T14:20:30Z")

</div>

the view:

\<% form\_for(@user, :url =\> (@edition ? user\_path() :  
user\_path), :method =\> :put, :html =\> {:multipart =\> true}) do |f| %\>  
\<%= f.file\_field(:user\_image\_file) %\>  
  
\<%= submit\_tag(‘Save’) %\>  
\<% end %\>

in the controller:

```
if params[:user][:user_image_file] then
  @user.upload_image
end

```

the model:

def upload\_image  
if user\_image\_file && user\_image\_file != “” then  
file = user\_image\_file  
write\_attribute(:image\_mime\_type,  
MIME::Types.type\_for(file.original\_filename).to\_s.gsub(‘image/’, ‘’))  
File.open(File.join(IMAGE\_FILE\_LOCATION,  
image\_filename(:original)), ‘wb’) { |f| f.write(file.read) }

```
  save
end

```

end
