Forum: Ruby on Rails saving the image

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Bahadır D. (Guest)
on 2007-07-26 10:48
Hello,

I try to prepare a upload page and here's my controller:

  def new
    if request.post?
        begin
          @file = params[:img]
          if @file.original_filename.length > 0
            filename = "/images/userimg/" + @file.original_filename
            File.open(filename, "wb")  { |f| f.write(@file.read) }
          end
        end
    end
  end

I want the file to be saved into the public/images/userimg folder. but i
get error at runtime: "No such file or directory -
/images/userimg/arrowd.gif"

what can i do for it?
Jamal S. (Guest)
on 2007-07-26 11:04
Bahadır Doğan wrote:
> I want the file to be saved into the public/images/userimg folder. but i
> get error at runtime: "No such file or directory -
> /images/userimg/arrowd.gif"
>
> what can i do for it?

You check if you have folder /images/userimg :)
Bahadır D. (Guest)
on 2007-07-26 11:11
I have it: "public/images/userimg"

Do I need to get the real path of that folder?




Jamal S. wrote:
> Bahadır Doğan wrote:
>> I want the file to be saved into the public/images/userimg folder. but i
>> get error at runtime: "No such file or directory -
>> /images/userimg/arrowd.gif"
>>
>> what can i do for it?
>
> You check if you have folder /images/userimg :)
Rusty B. (Guest)
on 2007-07-26 11:52
(Received via mailing list)
On Jul 26, 3:11 am, "Bahadır Doğan" <removed_email_address@domain.invalid>
wrote:
> I have it: "public/images/userimg"
>
> Do I need to get the real path of that folder?

Try:
filename = "#{RAILS_ROOT}/public/images/userimg/" +
@file.original_filename

Be aware that this could be abused.  It might be possible for someone
to put ../ in the filename and do something malicious like add a
controller to your application or overwrite your log files.

~Rusty
Bahadır D. (Guest)
on 2007-07-26 13:46
yes,that's right:
       filename = "#{RAILS_ROOT}/public/images/userimg/" +
This topic is locked and can not be replied to.