admin link in application helper


Im trying to create a helper method for my admin links. in quite a few
views i have the code

<% if current_user %>
<%= link_to "Edit", edit_model_path(model) %>
<%= link_to "New", new_model_path %>
<%= link_to "Delete", model, :confirm => "Your a Noob", :method
=> :delete %>
<% end %>

that only display these when logged in.

I would like to do something like this in their place

<%= admin_links(model) %>
and pass the current item into the application helper method

def admin_links(m)
if current_user
  a = "#{link_to "edit" edit_m_path(m)}"
  a << "#{link_to "new" new_m_path}"
  a << "#{link_to "Delete", m, :confirm => "Your a Noob", :method
=> :delete}"

Or something of the like. Im not as skilled in the way of helpers but
would like to be.

any help would be great.

Thanks in advance


Here is how I have done it.

In routes:

map.namespace(:admin) do |admin|
    admin.resources :users, :member=>{:edit_password=>:get,
                                           :update_password=>:post }
    admin.resources :suppliers
    admin.resources :categories

Now just use admin in the path methods
    = link_to 'Edit', edit_admin_user_path(@user)
    = link_to 'Password', edit_password_admin_user_path(@user)
    = link_to 'Back', admin_users_path

In the form:
form_for [:admin,@user] do |f|

But have a look at the routing section on the railsguides site. There
are quite a few options for setting up routes and I still have to play
with some of them myself.

I am actually planning to eliminate the need for admin in my path
methods by using :name_prefix=>nil in the route. I think I did this
somewhere once when I needed to move a resource into the admin
namespace. It simplifies the process since the paths don't need to be
edited. But then admin wont appear or be required in the url.