关闭

Rails中的ajax运用2---关注

56人阅读 评论(0) 收藏 举报
分类:
关注按钮的Ajax实现方式
1、原理:Ajax向服务器发送异步请求,在不刷新页面的情况下更新页面的内容

常规关注
2、关注一个用户
3、在user视图下面先编写局部关注视图表单_follow.html.erb

<%= form_for(current_user.active_relationships.build) do |f| %>

<div><%= hidden_field_tag :followed_id, @user.id %></div>
<%= f.submit "Follow", class: "btn btn-primary" %>

<% end %>

4、在user模型编写关注一个用户的方法

def follow(other_user)

active_relationships.create(followed_id: other_user.id)

end

5、在关系模型中定义关注的常规实现方法

def create
user = User.find(params[:followed_id])

current_user.follow(user)
redirect_to user

end


ajax关注

1、在user视图下面先编写局部关注视图表单_follow.html.erb

<%= form_for(current_user.active_relationships.
                              build(followed_id: @user.id),

remote: true) do |f| %>
<div><%= hidden_field_tag :followed_id, @user.id %></div>

<%= f.submit "Follow", class: "btn btn-primary" %><% end %>

2、在关系模型中定义关注的常规实现方法

def create
user = User.find(params[:followed_id])

current_user.follow(user)

respond_to do |format|

format.html { redirect_to @user }

format.js

end

3、如果请求是Ajax,rails 会自动调用的嵌入式ruby文件(.js.erb)






0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4121次
    • 积分:177
    • 等级:
    • 排名:千里之外
    • 原创:13篇
    • 转载:5篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档