extjs6 拿数据库里面的数据
时间: 2024-05-11 21:14:17 浏览: 20
要从数据库中获取数据,您需要使用服务器端脚本(如PHP、Java、Python等)编写API来查询数据库并返回数据。一般来说,您可以使用AJAX请求来调用API并从服务器获取数据。
以下是一个使用PHP编写的简单API示例,可以从数据库中获取数据:
```php
<?php
// 连接数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$conn = new mysqli($servername, $username, $password, $dbname);
// 查询数据
$sql = "SELECT * FROM myTable";
$result = $conn->query($sql);
// 将数据转换为JSON格式并返回
$data = array();
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$data[] = $row;
}
}
echo json_encode($data);
// 关闭连接
$conn->close();
?>
```
在ExtJS中,您可以使用Ext.Ajax类来发送请求并获取数据。以下是一个简单的示例,它从上面的API中获取数据并将其显示在ExtJS的Grid组件中:
```javascript
Ext.define('MyApp.view.MyGrid', {
extend: 'Ext.grid.Panel',
alias: 'widget.mygrid',
store: {
fields: ['id', 'name', 'email'],
proxy: {
type: 'ajax',
url: 'myapi.php',
reader: {
type: 'json',
rootProperty: 'data'
}
},
autoLoad: true
},
columns: [
{ text: 'ID', dataIndex: 'id' },
{ text: 'Name', dataIndex: 'name' },
{ text: 'Email', dataIndex: 'email' }
]
});
```
在这个示例中,我们定义了一个名为MyGrid的组件,它使用Ext.grid.Panel类作为基类,并设置了一个store属性来存储从API获取的数据。我们还定义了三个列来显示每条记录的ID、名称和电子邮件地址。
要使用此组件,您只需要将它添加到您的应用程序中:
```javascript
Ext.application({
name: 'MyApp',
launch: function() {
Ext.create('MyApp.view.MyGrid', {
renderTo: Ext.getBody()
});
}
});
```
这将在页面上呈现一个包含从数据库中获取的数据的表格。请注意,此示例仅用于演示目的,实际上您需要使用更安全和可靠的方式来连接和查询数据库。