javascript - 具有动态数据的引导树视图
问题描述
谁能帮我把这个 PHP 代码转换成 Django 代码?
我想将 Bootstrap Treeview 插件与来自 Django 后端的动态数据一起使用。我从网站上找到了这段代码,但不幸的是它是用于 PHP 的。而且我什至不知道 PHP 的“P”。
<?php
//fetch.php
$connect = mysqli_connect("localhost", "root", "", "testing1");
$query = "
SELECT * FROM country_state_city
";
$result = mysqli_query($connect, $query);
//$output = array();
while($row = mysqli_fetch_array($result))
{
$sub_data["id"] = $row["id"];
$sub_data["name"] = $row["name"];
$sub_data["text"] = $row["name"];
$sub_data["parent_id"] = $row["parent_id"];
$data[] = $sub_data;
}
foreach($data as $key => &$value)
{
$output[$value["id"]] = &$value;
}
foreach($data as $key => &$value)
{
if($value["parent_id"] && isset($output[$value["parent_id"]]))
{
$output[$value["parent_id"]]["nodes"][] = &$value;
}
}
foreach($data as $key => &$value)
{
if($value["parent_id"] && isset($output[$value["parent_id"]]))
{
unset($data[$key]);
}
}
echo json_encode($data);
/*echo '<pre>';
print_r($data);
echo '</pre>';*/
?>
这是他们在 PHP 教程中使用的表结构。
--
-- Table structure for table `country_state_city`
--
CREATE TABLE IF NOT EXISTS `country_state_city` (
`id` int(11) NOT NULL,
`name` varchar(250) NOT NULL,
`parent_id` int(11) NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=latin1;
--
-- Dumping data for table `country_state_city`
--
INSERT INTO `country_state_city` (`id`, `name`, `parent_id`) VALUES
(1, 'USA', 0),
(2, 'Canada', 0),
(3, 'Australia', 0),
(4, 'New York', 1),
(5, 'Alabama', 1),
(6, 'California', 1),
(7, 'Ontario', 2),
(8, 'British Columbia', 2),
(9, 'New South Wales', 3),
(10, 'Queensland', 3)
--
-- Indexes for dumped tables
--
--
-- Indexes for table `country_state_city`
--
ALTER TABLE `country_state_city`
ADD PRIMARY KEY (`id`);
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT for table `country_state_city`
--
ALTER TABLE `country_state_city`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=28;
解决方案
推荐阅读
- javascript - 如何取消javascript中的特定事件?
- machine-learning - 线性回归问题是否总是被归类为监督机器学习问题
- c# - Kmers - 如何加入序列并将子字符串放入数组
- python - 如何更改字符串中的字母
- c++ - 计算数组中的元素而不是数组大小
- python - 如何从字符串中获取char作为变量名?
- docker - 当卷映射数据发生更改时,docker 会自动重新运行
- ffmpeg - 如何为ffmpeg lavfi设置fps
- ruby-on-rails - 将 ApplicationController 从一个 Rails 引擎加载到另一个 Rails 引擎
- javascript - 如何在 Cypress 中使用 RegExp 验证电话号码?