2012-02-01 4 views
0

Я пытаюсь получить user_id пользователя, который вошел в систему. Таким образом, пользователь создаст сообщение в блоге, и он будет записывать идентификатор пользователя при создании сообщения в блоге.Rails 3 assocations

Я знаю, как это сделать, используя вложенные ресурсы, но как я могу получить user_id при создании нового сообщения в блоге без вложенных ресурсов?

маршруты будут выглядеть следующим образом

resources :blogs 

Я также попытался добавить скрытое поле в блог форме _blog.html.erb

<%= f.hidden_field :site_id, :value => @blog.site_id %> 

Ассоциация настроена правильно, я просто пытаюсь увидеть как я могу получить user_id без вложенных ресурсов. Какие-либо предложения?

+1

вопрос несколько вводит в заблуждение или неполными. как user_id связан с вложенными ресурсами? –

+0

Если бы я создавал вложенный ресурс с использованием сайтов и блогов, я мог бы получить user_id, обновив контроллер блогов, чтобы включить параметры сайта. – coletrain

+0

его не про другой способ, его как ты этого хочешь. как вы собираетесь получать user_id из параметров сайта, вы не объяснили, что внутри вашего вопроса? –

ответ

1

если вы используете изобрести/authlogic для аутентификации, то вы можете легко получить user_id с помощью current_user метода при условии

+0

Это единственный способ или предпочтительнее? Я знаю, как это сделать так, что мне просто интересно, есть ли другой способ, если нет, тогда я в порядке. – coletrain

+0

это правильный подход для входа в систему пользователя –

+0

вы написали 'var end =" 98.343 "+" 44.323243243 ";' это должно быть как - 'var end = new google.maps.LatLng (" 98.343 "," 44.323243243 "); ' –

3

Вытащите идентификатор пользователя от вошедшего в систему пользователя в BlogsController # создать метод.

Пример (Обратите внимание, что, как вы получаете доступ к user_id будет зависеть от того, как вы делаете проверку подлинности)

class BlogsController < ApplicationController 
    def create 
    @blog = Blog.new params[:blog] 
    @blog.user_id = current_user.id 
    if @blog.save 
     ... 
    end 
    end 
end