我想使用Fuel UX数据网格来显示我从数据库中检索的一些数据。该页面由rails服务器上的ruby提供。
用于构建数据对象的javascript示例代码:
var dataSource = new StaticDataSource({
columns: [{
property: 'toponymName',
label: 'Name',
sortable: true
}, {
property: 'countrycode',
label: 'Country',
sortable: true
}, {
property: 'population',
label: 'Population',
sortable: true
}, {
property: 'fcodeName',
label: 'Type',
sortable: true
}],
data: sampleData.geonames,
delay: 250
});
$('#MyGrid').datagrid({
dataSource: dataSource,
stretchHeight: true
});
$('#datagrid-reload').on('click', function () {
$('#MyGrid').datagrid('reload');
});
如果我理解代码,我将在dataSource变量的columns对象中定义我的列和一些属性,而dataData.geonames正在加载数据对象。
sampleData为here
使用rails约定替换sampleData.geonames可以做些什么?我试着通过几种方法来调整这里的rails对象。
例如,我修改了我的列的属性字段以对应于我的用户模型的某些属性。我试过替换
data: sampleData.geonames,
到
data: <%= @users.to_json %>,
我对gems和版本有一点限制,目前正在使用Rails 2.3。
感谢您的帮助。
答案 0 :(得分:1)
如果您希望datagrid发出后台AJAX请求以从您的应用加载数据,请参阅本教程,该教程将更接近您的需求:
http://dailyjs.com/2012/10/29/fuel-ux
这样可以立即加载页面,然后异步加载数据。
如果您更愿意坚持使用StaticDataSource方法,只需在页面上嵌入一个类似于此的小脚本:
<script>
var myData = { ... };
</script>
然后,加载:
var dataSource = new StaticDataSource({
columns: [ ... ],
data: myData,
delay: 250
});