我从服务中获取数据,然后将数据设置为我的bean对象,并希望在我的视图中使用相同的数据,现在在rails视图中以表单的形式显示它。现在我想用主干验证这个表单。Backbone With Rails
我是Rails和Backbone的新手。
请给我一个关于如何继续这个想法。
我从服务中获取数据,然后将数据设置为我的bean对象,并希望在我的视图中使用相同的数据,现在在rails视图中以表单的形式显示它。现在我想用主干验证这个表单。Backbone With Rails
我是Rails和Backbone的新手。
请给我一个关于如何继续这个想法。
我想你可能对Web应用程序的工作方式感到困惑。 Backbone是一个客户端端架构;它使用在用户浏览器中运行的Javascript代码。 Rails是一个服务器端架构;它使用在您的服务器上运行的Ruby代码。
鉴于此,您的Backbone代码和您的Rails代码必须完全分离。这两者只能通过两种方式进行通信:
1)您的Rails代码可以将<script>
标签写入页面(在.html.erb文件中),并将可变数据放在那里;例如:
<script>
var myVarFromRails = '<%= someRailsVariable %>';
</script>
当从服务器恢复(即当您查看源代码的网页。),将被转换到:
<script>
var myVarFromRails = 'foo';
</script>
(假设“富”是的someRailsVariable
值)。
2)您的Java脚本代码可以向Rails URL发出AJAX请求,并且无论Rails代码吐出的是什么,都会返回作为对您的AJAX请求的响应。换句话说,你可以这样做:
$.ajax({url: someRailsUrl, complete: function(response) {
// whatever the server sent back will be inside the "response" variable
}});
除此之外两者几乎完全独立的,如果你想要做同样的事情在他们两个(例如验证表单。)实际上需要写代码两次,Ruby一次,Javascript一次。
我说“本质上”,因为有Rails插件以不同的方式为你做#1和#2。我不是Rails的专家,即使我有这么多的插件,你真的需要找出自己的问题,找出存在什么以及对你的代码库有什么意义。
希望有所帮助。
*编辑*
我知道我只是说我不会列出库,但后来我意识到,这将会是更有益的,如果我至少提供了一些让你开始。只是不要把这些当做佳能;他们现在只是一些流行的图书馆,但他们可能会或可能不适合你。
这最后两个是不实际的库,他们是一本书/演示,但我认为他们可能会有用。
P.S.如果你没有困惑,而且你实际上只是问“我如何在Backbone中验证表单?”,基本的答案是你使用Backbone.View来包装表单,并添加逻辑来设置表单的数据在Backbone.Model中。然后你在该模型上定义一个验证方法,为它添加验证逻辑,并且你已经完成设置。如果您希望将该表单数据发送到服务器,则只需调用'model.save()'(假设您已在该模型中定义了一个url)。 – machineghost
感谢您的回答......我不会对此感到困惑,而且我已经执行了所有指定的操作。但是我很困惑如何在浏览器上显示消息。我正在检查验证器的isValid方法并且只能够现在显示警报。 – unknown
我仍然难以理解您的问题:“我正在检查验证程序的isValid方法,现在只能显示警报”甚至不是一个语法句子,让独自一个完整的解释,你正在做什么,什么是不工作的。如果你想从堆栈溢出的帮助,你会更成功,如果你详细说明(最好编辑你的问题),并花时间沟通清楚。 – machineghost
我的骨干视图将如何识别标识DOM中表单的tagName和id属性? – unknown