J'utilise authlogic pour que les utilisateurs se connectent et une fois qu'ils le font, je voudrais qu'ils soient en mesure d'ajouter des messages. Pour une raison quelconque, je continue à obtenir "Impossible de trouver l'utilisateur sans ID". Voici mon code:authlogic et posts pour current_user
posts controller
def create
@user = User.find(params[:user_id])
@post = @user.posts.create(params[:post])
redirect_to current_user_path(@current_user)
end
show page
<% @user.posts.each do |post| %>
<tr>
<td><%= post.postName %></td>
<td><%= post.body %></td>
<td><%= link_to 'Show', post %></td>
<td><%= link_to 'Edit', edit_post_path(post) %></td>
<td><%= link_to 'Destroy', post, :confirm => 'Are you sure?', :method => :delete %> </td>
</tr>
<% end %>
</table>
<br />
<h2>Add a Post:</h2>
<%= form_for([@current_user, @user.posts.build]) do |f| %>
<div class="field">
<%= f.label :body %><br />
<%= f.text_area :body %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
Je sais qu'il a quelque chose à voir avec l'utilisateur actuel, mais je ne peux pas obtenir ce travail! Toute aide est grandement appréciée!
Normallement, authlogic utilise "current_user" et non "@current_user" ... avez-vous personnalisé pour être une variable d'instance (plutôt qu'un appel de méthode)? –
current_user renvoie une erreur. Il semble que ce soit le routage vers mon modèle de messages au lieu d'utiliser l'ID utilisateur dans l'URL – user893447