1
我是jQuery/Javascript的新手,并且遇到了与机器人实现聊天室的麻烦。我特别被卡在控制器和JS的沟通上。如何在帖子后更改轨道控制器的视图?
基本功能:
- 用户类型的注释
- 的Javascript发送到后导轨与评论数据控制器
- Ruby类(@bot)主罚评论和返回响应
得到回应加到视图
这是我到目前为止
控制器
class MainPageController < ApplicationController
def chat
@username = params[:username]
@bot = JibunBots.new(@username, Message.where(:username => @username).first.message)
respond_to |post| do
return @bot.conversation(post.data)
end
end
end
的Javascript
$(document).ready(function() {
$("#submitmsg").click(function(){
var clientmsg = $("#usermsg").val();
$('<p>' + gon.username + ": " + clientmsg + '</p><br>').appendTo('#chatbox');
$("#usermsg").attr("value", "");
#SEND POST HERE?
#RECEIVE DATA FROM CONTROLLER?
#ADD NEW COMMENT HERE?
});
})
如果你正在创建一个聊天系统,我建议你研究服务器端事件或WebSockets。不要使用AJAX轮询,因为我确信有人会很快建议它。 –
这个AJAX选项没有问题。这真的取决于你的需求:你真的需要实时聊天吗?或者如果每30秒更新一次就可以吗? – MrYoshiji
@MrYoshiji如果需要20 - 30秒 – Quinty