带导轨的主干



我正在从服务获取数据,然后将数据设置为我的 bean 对象,并希望在我的视图中使用相同的数据,现在在 rails 视图中以表单显示它。现在我想使用骨干验证此表单。

我是Rails和Backbone的新手。

请给我一个关于如何进行的想法。

我想也许您对Web应用程序的工作方式感到困惑。 骨干是一个客户端框架;它使用在用户浏览器中运行的 Javascript 代码。 Rails是一个服务器端框架;它使用在您的服务器上运行的 Ruby 代码。

考虑到所有这些,根据定义,你的骨干代码和你的Rails代码必须是完全分开的。 两者只能通过两种方式进行通信:

1)你的Rails代码可以将<script>标签写入页面(在.html.erb文件中)并将变量数据放在那里;例如:

<script>
var myVarFromRails = '<%= someRailsVariable %>';
</script>

当它从服务器返回时(即当您查看源代码页面时),它将转换为:

<script>
var myVarFromRails = 'foo';
</script>

(假设"foo"是someRailsVariable的值)。

2)你的Javacript代码可以向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 专家,即使我有太多这样的插件,你真的需要自己寻找,找出存在的东西以及什么对你的代码库有意义。

希望有帮助。

*编辑*

我知道我只是说我不会列出库,但后来我意识到如果我至少提供一些来帮助您入门会更有帮助。 只是不要把这些当作经典;它们目前只是一些流行的库,但它们可能适合也可能不适合您。

  1. https://github.com/codebrew/backbone-rails
  2. https://github.com/meleyal/backbone-on-rails
  3. https://github.com/aflatter/backbone-rails
  4. https://learn.thoughtbot.com/products/1-backbone-js-on-rails
  5. http://kiranb.scripts.mit.edu/backbone-slides/

最后两个实际上不是图书馆,它们是一本书/演示文稿,但我认为它们可能有用。

相关内容

  • 没有找到相关文章

最新更新