个人网站制作 Part 9 | Web开发项目

文章目录

  • 个人网站制作 Part 9 | Web开发项目
  • 👩‍💻 基础Web开发练手项目系列:个人网站制作
    • 🚀 添加博客功能
      • 🔨使用Express和MongoDB
        • 🔧步骤 1: 创建博客模型
        • 🔧步骤 2: 创建博客路由
      • 🔨使用前端框架
        • 🔧步骤 3: 使用Vue.js渲染博客列表
    • 🚀 预览与保存
    • 🚀 下一步计划


个人网站制作 Part 9 | Web开发项目

👩‍💻 基础Web开发练手项目系列:个人网站制作

欢迎回到基础Web开发练手项目系列!

在前几篇博文中,我们已经创建了个人网站的基本结构、样式、导航栏、项目展示、联系信息、表单交互、动画效果、页面滚动效果、响应式设计、性能优化、页面动画、用户认证、数据库集成、电子邮件通知和社交媒体集成。

在本篇中,我们将学习如何添加博客功能,使你的网站具有发布和管理文章的能力。

在这里插入图片描述

🚀 添加博客功能

🔨使用Express和MongoDB

🔧步骤 1: 创建博客模型

server.js 文件中创建博客模型:

const blogSchema = new mongoose.Schema({
    title: String,
    content: String,
    author: String,
    date: { type: Date, default: Date.now }
});

const Blog = mongoose.model('Blog', blogSchema);
🔧步骤 2: 创建博客路由

server.js 文件中创建博客路由:

// 显示所有博客文章
app.get('/blogs', async (req, res) => {
    try {
        const blogs = await Blog.find();
        res.json(blogs);
    } catch (error) {
        res.json({ message: error.message });
    }
});

// 创建新博客文章
app.post('/blogs', async (req, res) => {
    const blog = new Blog(req.body);
    try {
        const savedBlog = await blog.save();
        res.json(savedBlog);
    } catch (error) {
        res.json({ message: error.message });
    }
});

🔨使用前端框架

🔧步骤 3: 使用Vue.js渲染博客列表
  1. index.html 文件中引入Vue.js。
<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
  1. index.html 文件中创建博客列表区域。
<div id="app">
    <h2>博客列表</h2>
    <ul>
        <li v-for="blog in blogs" :key="blog._id">
            {{ blog.title }} - {{ blog.author }}
        </li>
    </ul>
</div>
  1. script.js 文件中添加Vue实例和获取博客数据的逻辑。
const app = new Vue({
    el: '#app',
    data: {
        blogs: []
    },
    mounted() {
        // 获取博客数据
        fetch('/blogs')
            .then(response => response.json())
            .then(data => this.blogs = data)
            .catch(error => console.error('获取博客数据失败:', error));
    }
});

🚀 预览与保存

确保保存所有文件并在浏览器中预览你的网站。你现在应该看到一个拥有基本博客功能的更加完善的个人网站了!

🚀 下一步计划

在下一篇文章中,我们将学习如何添加用户评论功能,使你的博客更加互动。记得继续关注本系列,为你的网站增添更多有趣的功能!

通过这个项目,你已经学到了Web开发中许多重要的基础知识,并通过添加博客功能使你的网站更加丰富多彩。祝你编码愉快,不断创新!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/461671.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

边缘计算网关的工作原理及其在工业领域的应用价值-天拓四方

随着物联网技术的快速发展&#xff0c;物联网时代已经悄然来临。在这个时代&#xff0c;数以亿计的设备相互连接&#xff0c;共享数据&#xff0c;共同构建智慧的世界。边缘计算网关通过将计算能力和数据存储推向网络的边缘&#xff0c;实现了对海量数据的实时处理&#xff0c;…

VBA combox/listbox 控件响应鼠标滚轮事件

在vba中&#xff0c;我们在用户窗体中如果添加有combox控件&#xff0c;或者是listbox控件。正常情况下&#xff0c;combox 和 listbox 是不响应鼠标滚轮事件的&#xff0c;且默认的VBA控件中&#xff0c;也没有提供响应鼠标滚轮事件的方法和入口。如此以来&#xff0c;我们在c…

三维卡通数字人解决方案,支持unity和Maya

企业对于品牌形象和宣传手段的创新需求日益迫切&#xff0c;美摄科技凭借其在三维卡通数字人领域的深厚积累&#xff0c;推出了面向企业的三维卡通数字人解决方案&#xff0c;帮助企业轻松打造独具特色的虚拟形象&#xff0c;提升品牌影响力和市场竞争力。 美摄科技的三维卡通…

AI技术崛起:数据可视化之路更近

在当今AI技术蓬勃发展的时代&#xff0c;数据可视化作为信息传达的重要手段&#xff0c;其门槛逐渐降低。然而&#xff0c;这并不意味着我们可以忽视学习数据可视化的重要性。即使不需要深入专业技术&#xff0c;对数据可视化的基础知识的了解也是至关重要的。那么&#xff0c;…

应用程序开发教学:医保购药系统源码搭建实战

医保购药系统作为医疗服务的重要组成部分&#xff0c;其开发不仅能够为患者提供更加便捷的购药服务&#xff0c;还能够提高医疗机构的管理效率。接下来&#xff0c;小编将为您讲解医保购药系统的源码搭建过程&#xff0c;介绍应用程序开发的基本步骤和技巧。 一、系统设计 我…

01背包 与 emo题目背景(周超人的遗憾) 的爱恨情仇

本题背景有意思&#xff0c;大家当乐子看&#xff0c;目前没有找到题目原题&#xff0c;也没有写过完全是01背包模板的题目&#xff0c;该篇文章大家注意其01背包一维写法的模板就好&#xff0c;注意各个关键点 ✨欢迎来到脑子不好的小菜鸟的文章✨ &#x1f388;创作不易&…

Vue3-03_组件基础_上

单页面应用程序 什么是单页面应用程序 单页面应用程序&#xff08;英文名&#xff1a;Single Page Application&#xff09;简称 SPA&#xff0c;顾 名思义&#xff0c;指的是一个 Web 网站中只有唯一的一个 HTML 页面&#xff0c;所有的 功能与交互都在这唯一的一个页面内完…

Square Pair

传送门 题意 思路 实际上我们要的 AiAj 肯定是 (ab)^2 所以我们只需要关注于 ai 这个数经过质因数分解 除掉平方数的结果 也就是Ai​ 除去完全平方数因子 每次我们对ai讨论只需要加上 cnt[a[i]] 即可 此外 0 需要特判 code

mysql 排序底层原理解析

前言 本章详细讲下排序&#xff0c;排序在我们业务开发非常常见&#xff0c;有对时间进行排序&#xff0c;又对城市进行排序的。不合适的排序&#xff0c;将对系统是灾难性的&#xff0c;这个不是危言耸听。可能有些人会想&#xff0c;对于排序mysql 是怎么实现的&#xff0c;…

WWW2024 | PromptMM:Prompt-Tuning增强的知识蒸馏助力多模态推荐系统

论文&#xff1a;https://arxiv.org/html/2402.17188v1 代码&#xff1a;https://github.com/HKUDS/PromptMM 研究动机 多模态推荐系统极大的便利了人们的生活,比如亚马逊和Netflix都是基于多模态内容进行推荐的。对于研究,人们也遵循工业界的趋势,进行modality-aware的用户…

生成器建造者模式(Builder)——创建型模式

生成器/建造者模式——创建型模式 什么是生成器模式&#xff1f; 生成器模式是一种创建型设计模式&#xff0c; 使你能够分步骤创建复杂对象。 该模式允许你使用相同的创建代码生成不同类型和形式的对象。 提炼两个关键点&#xff1a;Ⅰ.分步骤创建复杂对象。Ⅱ.相同创建代码…

北斗卫星在桥隧坡安全监测领域的应用及前景展望

北斗卫星在桥隧坡安全监测领域的应用及前景展望 北斗卫星系统是中国独立研发的卫星导航定位系统&#xff0c;具有全球覆盖、高精度定位和海量数据传输等优势。随着卫星导航技术的快速发展&#xff0c;北斗卫星在桥隧坡安全监测领域正发挥着重要的作用&#xff0c;并为相关领域…

python 目录和文件基本操作

目录操作 获取当前目录&#xff1a; import os dir_path os.getcwd() print("当前目录&#xff1a;", dir_path) 当前目录&#xff1a; D:\work\pycharm\object 创建目录&#xff1a; import osdir_path os.getcwd() print("当前目录&#xff1a;", d…

【算法刷题 | 栈】3.16(有效的括号、删除字符串中的所有相邻重复项、逆波兰表达式求值)

文章目录 1.有效的括号1.1题目1.2解法&#xff1a;栈 2.删除字符串中的所有相邻重复项2.1题目2.2解法&#xff1a;栈 3.逆波兰表达式求值3.1题目3.2解法&#xff1a;栈 1.有效的括号 1.1题目 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff…

Midjourney绘图欣赏系列(十二)

Midjourney介绍 Midjourney 是生成式人工智能的一个很好的例子&#xff0c;它根据文本提示创建图像。它与 Dall-E 和 Stable Diffusion 一起成为最流行的 AI 艺术创作工具之一。与竞争对手不同&#xff0c;Midjourney 是自筹资金且闭源的&#xff0c;因此确切了解其幕后内容尚不…

element ui 中文离线文档(百度云盘下载)

一般内网开发上不了网&#xff0c;用离线版本比较方便&#xff0c;下载地址&#xff1a; https://download.csdn.net/download/li836779537/88355878?spm1001.2014.3001.5503 下载后里面有个 index.hrml 双击打开就可以用 效果如下&#xff1a;

ADC架构III:Σ-Δ型ADC基础

简介 Σ-Δ型ADC是现代语音频带、音频和高分辨率精密工业测量应用所青睐的转换器。高度数 字架构非常适合现代细线CMOS工艺&#xff0c;因而允许轻松添加数字功能&#xff0c;而又不会显著增加成 本。随着此转换器架构的广泛使用&#xff0c;了解其基本原理显得非常重要。 历…

河南大学大数据平台技术实验报告二

大数据平台技术课程实验报告 实验二&#xff1a;HDFS操作实践 姓名&#xff1a;杨馥瑞 学号&#xff1a;2212080042 专业&#xff1a;数据科学与大数据技术 年级&#xff1a;2022级 主讲教师&#xff1a;林英豪 实验时间&#xff1a;2024年3月15日3点 至 2024年3月15日4点40 …

C#,入门教程(27)——应用程序(Application)的基础知识

上一篇: C#,入门教程(26)——数据的基本概念与使用方法https://blog.csdn.net/beijinghorn/article/details/124952589 一、什么是应用程序 Application? 应用程序是编程的结果。一般把代码经过编译(等)过程,最终形成的可执行 或 可再用 的文件称为应用程序。可执行文…

数据结构之顺序表(包学包会版)

目录 1.线性表 2.顺序表 2.1概念及结构 2.2接口实现 3.总结 halo&#xff0c;又和大家见面了&#xff0c;今天要给大家分享的是顺序表的知识&#xff0c;跟着我的脚步&#xff0c;包学包会哦~ 规矩不乱&#xff0c;先赞后看&#xff01; ps&#xff1a;&#xff08;孙权…