NodeJS实战 利用Express&MongoDB搭建博客(6)文章分类编辑

本文档介绍了如何在NodeJS中利用Express框架和MongoDB数据库进行博客文章分类的编辑和删除操作。包括视图文件admin/category_index.html和admin/category_edit.html的设置,以及/routers/admin.js中的路由处理逻辑,涵盖了分类的修改和删除功能实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

分类编辑

    /views/admin/category_index.html

{% extends 'layout.html' %}
{% block main %}
<ol class="breadcrumb">
    <li><a href="/">管理首页</a></li>
    <li><span>分类列表</span></li>
</ol>
<h3>分类列表</h3>

<table class="table table-hover table-striped">
    <tr>
        <th>ID</th>
        <th>分类名称</th>
        <th>操作</th>
    </tr>
    {% for category in categories %}
    <tr>
        <td>{
  
  {category._id.toString()}}</td>
        <td>{
  
  {category.name}}</td>
        <td>
            <a href="/admin/category/edit?id={
  
  {category._id.toString()}}">修改</a>
            <a href="/admin/category/delete?id={
  
  {category._id.toString()}}">删除</a>
        </td>
    </tr>
    {% endfor %}
</table>
### 数组名的具体含义及其在编程中的作用 #### 定义与本质 数组名实际上表示的是存储连续数据块的第一个元素所在的地址。换句话说,它是不可更改的指针常量,指向该数组首元素的位置[^1]。这意味着一旦定义了一个数组,比如 `int arr[5];` ,那么在整个程序执行期间,“arr”的值始终不变,因为它固定地指向这块特定内存区域的起点。 #### 数据访问方式 通过数组名加上索引来获取指定位置的数据项是一种非常高效的方式。例如,在表达式 `*(arr+i)` 中,我们实际上是先找到数组开头处(`arr`)再加上偏移量i乘以每个单元占用的空间大小之后的结果就是第 i+1 个元素的实际物理地址;最后解引用此地址即可获得对应的数值[^2]。 #### 存储布局特点 考虑一个多维数组如 `int b[2][3];`, 可将其视为具有两行三列结构的一个表格形式存在计算机内存当中。然而值得注意的是,尽管看起来像是两个独立的一维子集组合而成的整体,但从底层实现角度来看,所有的这些条目都被紧密排列在一起形成单一维度的大序列。因此当我们说b代表整个二维表时,并不意味着它直接保存了所有行列关系的信息,而是仅仅记录下了初始部分的位置而已。至于其他细节,则依赖编译器按照既定规则自动处理完成定位过程[^3]。 #### 编程实践价值 除了基本功能外,灵活运用数组还能极大提升代码可读性和运行效率。拿经典的冒泡排序为例,借助简单的双重循环配合条件判断语句就能轻松达成目标。而且由于现代处理器缓存机制的存在,顺序遍历临近内存区块往往能带来额外性能增益效果[^4]。 ```c // A simple implementation of Bubble Sort using arrays in C language. void bubbleSort(int arr[], int n) { bool swapped; for (size_t i = 0; i < n - 1; ++i) { swapped = false; for (size_t j = 0; j < n - i - 1; ++j) { if (arr[j] > arr[j + 1]) { // Swap adjacent elements that are out of order int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; swapped = true; } } /* If no two elements were swapped by inner loop, then break */ if (!swapped) break; } } ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值