如何使用 ruby on Rails 加载 slickgrid
我想使用 slickgrid 在 Rails 应用程序上有一个网格。
我认为我最初的问题是没有关于在哪里或如何使用 sql 数据库中的数据加载网格的最佳实践。
在 *.html.erb 文件中,我是否使用 javascript 并嵌入 ruby 代码(这是否可能)?
有没有人使用 slickgrid 或类似的东西以及 Ruby on Rails 应用程序?
任何简单的编码示例都将受到高度赞赏!
I'd like to have a grid on a rails application using slickgrid.
My initial problem I think is not having a best practice on where or how to load the grid with data from the sql database.
In the *.html.erb file, do I use javascript and embed ruby code (is this even possible)?
Is anyone out there using slickgrid, or anything comparable, with a ruby on rails application?
Any simple coding examples are highly appreciated!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
发布评论
评论(3)
有几种方法可以将数据输入 SlickGrid。最简单的可能是 AJAX 调用。如果数据是静态的,您可以将其嵌入到页面中,但这可能比仅使用 AJAX 有用且更困难。
您需要的第一件事是可以访问的路由,该路由会将数据返回到浏览器,最好采用 JSON 格式,以便在客户端轻松处理。
假设您要返回的数据只是一个简单的集合,我们将使用用户列表的示例。
class UsersController < ApplicationController
def index
@users = User.all
respond_to { |format|
format.json { render :json => @users }
}
end
end
我们假设您可以通过 URL http://example.com/users/ 访问此
内容我们有办法获取数据,我们可以使用 JavaScript 在浏览器端提取数据。我的示例将使用 jQuery,但任何 JavaScript 框架都将有一种简单的方法来进行 AJAX 调用。
请注意,SlickGrid 需要一个地方来放置您的数据。因此,我假设您的 HTML 中有这样一行:
# We need to wait for the DOM to be loaded so we wrap our AJAX call in a
# jQuery call that's the equivalent of document.ready()
jQuery(function() {
# getJSON is a jQuery convenience function for doing an AJAX call
# that fetches some JSON data.
jQuery.getJSON('http://example.com/users', function(data) {
grid = new Slick.Grid("#slickGrid", data, columns, options);
$("#slickGrid").show();
});
});
您可以从 Github 获取有关如何使用 SlickGrid 的更多示例存储库:
https://github.com/mleibman/SlickGrid/wiki/_pages
有关如何操作的更多信息要使用 jQuery 进行 AJAX 调用,这里是更通用的 jQuery.ajax() 函数的文档:
http://api.jquery.com/jQuery.ajax/
以及我的 getJSON 函数具体使用:
http://api.jquery.com/jQuery.getJSON/
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我使用这篇文章动态生成JavaScript文件。看起来像:
我能够将数据从数据库加载到 SlickGrid 中。但是,目前我确实遇到了 挂起问题列选择器(我希望你不需要它)。
I used this post to generate a JavaScript file dynamically. It looks like:
I was be able to load data from database into the SlickGrid. However, currently I do experience a hang problem with the columnpicker (I hope you don't need it).