Html 让RubyonRails中的Microposts发布到墙上的问题
我遵循迈克尔·哈特尔的教程创建了一个基本的推特类型的应用程序,我试图找出如何让我的帖子显示在关注者的墙上,而不是总是在我自己的墙上发布。在阅读了我的代码和各种其他答案之后,我相信错误在于我在HTML中设置的表单标签。。。有什么非常明显的错误吗?或者你知道的关于这个主题的有用教程Html 让RubyonRails中的Microposts发布到墙上的问题,html,ruby-on-rails,ruby,posting,Html,Ruby On Rails,Ruby,Posting,我遵循迈克尔·哈特尔的教程创建了一个基本的推特类型的应用程序,我试图找出如何让我的帖子显示在关注者的墙上,而不是总是在我自己的墙上发布。在阅读了我的代码和各种其他答案之后,我相信错误在于我在HTML中设置的表单标签。。。有什么非常明显的错误吗?或者你知道的关于这个主题的有用教程 <div class="user-post"> <%= form_for(@micropost) do |f| %> <div>
<div class="user-post">
<%= form_for(@micropost) do |f| %>
<div>
<%= f.text_area :content, placeholder: "Compose new micropost...", class: 'create-post-input' %>
<div>
<%= f.submit "Post", class: 'post-button-light' %>
</div>
</div>
<% end %>
<div>
<div class= "scrollBox" >
<% if @user.microposts.any? %>
<% @microposts.each do |micropost| %>
<li>
<%= micropost.content %>
<% if current_user?(micropost.user) %>
<%= link_to "delete", micropost, method: :delete %>
<%end %>
</li>
<% end %>
<%end%>
</div>
</div>
Micropost控制器:
def create
@micropost = current_user.microposts.build(micropost_params)
if @micropost.save
redirect_to current_user
else
redirect_to current_user
end
end
def destroy
@micropost.destroy
redirect_to current_user
end
private
def micropost_params
params.require(:micropost).permit(:content)
end
def correct_user
@micropost = current_user.microposts.find_by(id: params[:id])
redirect_to root_url if @micropost.nil?
end
您是否可以共享控制器中的相关操作,其中设置了实例变量
@user
和@micropost
。您的模型是如何关联的?基本上,您是如何实现遵循
逻辑的?您可能将@micropost
定义为属于登录用户,而不是您正在查看的页面的用户。我已更新以包含控制器并遵循逻辑
def create
@micropost = current_user.microposts.build(micropost_params)
if @micropost.save
redirect_to current_user
else
redirect_to current_user
end
end
def destroy
@micropost.destroy
redirect_to current_user
end
private
def micropost_params
params.require(:micropost).permit(:content)
end
def correct_user
@micropost = current_user.microposts.find_by(id: params[:id])
redirect_to root_url if @micropost.nil?
end