How to handle absolute URL that user inputs into a table?

Hi,

I have a User table that has a Website column.

In the form I would have the user type in the URL to their website.

If they type the full-blown address "http://www.example.com" then
"link_to @user.website, @user.website" will work out of the box.

However, if they type in "www.example.com" then the above code would
display something like: localhost:3000/controller/action... something
like that.

How do I make it that no matter what the user type it, link_to would
take them to an external site?

Sorry if this sounds like a too basic question.

Thanks.

You could check what the user enters and add the http:// if they have
not provided it, either on the way into the database or out of it.

Colin

Depends on the protocol for the websites. It is difficult to parse
all possible protocols. Assuming you are only talking about http, you
can do something like

regex = /^(https?:\/\/)/
@user.website = "http://" + @user.website unless regex.match(website)

How do I make it that no matter what the user type it, link_to would
take them to an external site?

Sorry if this sounds like a too basic question.

Thanks.

do this no matter what URL user enters it will take him to correct page

        regex = /https?:\/\/(.*)/.match(@user.website)
        if regex==nil
           link_to @user.website,"http://#{@user.website}", :popup
=>"true"
        else
          link_to @user.website,"#{@user.website}", :popup =>"true"