При создании нового объекта, как я могу связать его с текущим пользователем - PullRequest
1 голос
/ 03 марта 2012

У меня есть модель, в которой пользователь может создавать множество. Я хочу, чтобы только пользователи могли видеть эти объекты, если они вошли в систему. Итак, на данный момент у меня установлены объект belongs_to:user и пользователь has_many:objects, но как мне установить свойство пользователя при создании объекта. Я в основном хочу, чтобы пользователь создал это, а затем отобразил их все снова, используя объект find(where user=current_user).

Ответы [ 3 ]

5 голосов
/ 03 марта 2012

В вашем файле objects_controller.rb создать действие выполните следующее:

@object = current_user.objects.build(params[:object])

Вместо:

@object = Object.new(params[:object])

Чтобы получить объекты текущего пользователя, просто:

@objects = current_user.objects
0 голосов
/ 04 марта 2012
@object = current_user.objects.build(params[:object])

<% if current_user %>
<% objects = current_user.objects %>
<% for object in objects %>
   <% object.name %>
<% end %>
<% else %>
<p>Not logged in</p>
<% end %>
0 голосов
/ 03 марта 2012

Вам нужно что-то, что будет аутентифицировать пользователей.Я бы предложил использовать Devise или authlogic

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...