<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>博客系统</title>
    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
    <style>
        body {
            font-family: Arial, sans-serif;
            margin: 0;
            padding: 0;
        }

        h1 {
            background-color: #333;
            color: white;
            padding: 10px;
            margin: 0;
        }

        .nav {
            background-color: #333;
            color: white;
            padding: 10px;
            text-align: right;
        }

        .nav a {
            color: white;
            text-decoration: none;
            margin-left: 10px;
        }

        .tabs-container {
            margin: 10px;
        }

        .tabs {
            cursor: pointer;
            padding: 10px;
            display: inline-block;
            background: #f1f1f1;
            margin: 5px;
            border-radius: 5px;
            transition: background 0.3s;
        }

        .tabs:hover {
            background: #e0e0e0;
        }

        .active {
            background: #ccc;
        }

        .posts {
            margin-top: 20px;
            padding: 10px;
        }

        .blog-post {
            border: 1px solid #ccc;
            padding: 10px;
            margin: 10px 0;
        }

        .like-button {
            cursor: pointer;
            margin-left: 5px;
        }
    </style>
</head>

<body>
    <h1>博客系统</h1>
    <div class="nav">
        <a href="/logout">退出登录</a>
    </div>

    <!-- 标签选项卡 -->
    <div class="tabs-container">
        <div class="tabs active" data-tag="最近">最近</div>
        <div class="tabs" data-tag="技术">技术</div>
        <div class="tabs" data-tag="生活">生活</div>
    </div>

    <div class="posts">
        <!-- 动态内容将被填充在这里 -->
    </div>

    <script>
        $(document).ready(function () {
            // 初始加载“最近”标签的内容
            loadPosts('最近'); 

            function loadPosts(tag) {
                $.ajax({
                    url: '/api/posts',
                    method: 'GET',
                    data: { tag: tag },
                    success: function (data) {
                        renderPosts(data);
                    },
                    error: function () {
                        $('.posts').html('<p>加载失败，请重试。</p>');
                    }
                });
            }

            function renderPosts(posts) {
                const postsContainer = $('.posts');
                postsContainer.empty(); // 清空现有内容
                if (posts.length === 0) {
                    postsContainer.append('<p>没有找到相关文章。</p>');
                    return;
                }
                posts.forEach(post => {
                    postsContainer.append(`
                        <div class="blog-post">
                            <h2>${post.title}</h2>
                            <p>${post.content}</p>
                            <p>创建时间: ${post.created_at}</p>
                            <span class="like-button">👍</span>
                        </div>
                    `);
                });
            }

            // 处理标签点击事件
            $('.tabs').on('click', function () {
                const tag = $(this).data('tag');

                // 激活当前标签
                $('.tabs').removeClass('active');
                $(this).addClass('active');

                // 加载对应标签的文章
                loadPosts(tag);
            });
        });
    </script>
</body>
</html>
在这段index.ejs页面代码的基础上，添加一个发布文章按钮，点击按钮后，进入发布文章框，框内可以写标题，写内容，可以自动获取发布时间，可以选择最近，技术，生活