用户登录

处理单个资源的请求用的是控制器的 show 这个方法,在 PostController 这个控制器里,找到它里面的 show 这个方法 .. 它可以渲染一个显示资源用的视图 .. 还得在数据库里查询出需要访问的某个资源的数据 ..

先把 view .. 还有 params 解构出来 ..

然后添加一个 post .. await 等待结果 .. 用一下 Database .. from posts ,从 posts 这个表里找数据 .. 用一个 where .. 设置一下条件 .. id 的值,应该是 params 里面的 id .. 这个 params 里面会包含请求里带的参数值 .. 我们需要的是资源的 id 参数的值 .. 接着再用一个 first .. 获取到查询结果里面的第一个值 .. 它应该就是某个特定 id 的文章内容 ..

下面可以再 return 一个视图 .. 用一下 view 的 render 方法 ... 视图可以是 post.show .. 带着一个对象数据 .. 里面添加一个 post ..

这样在 post.show 这个视图里面,可以使用 post 里面带的数据,这个数据就是从数据库里查询出来的结果 ..

视图

创建一个视图 .. 放在 views .. post 里面 .. 名字是 show.edge .. 视图里面先用一下 layouts 里的 main 这个布局 ..

然后是一组 section .. 设置一下 content 区域里的内容 .. 一个 div ,加上 container ..

一组 h1 标签,上面加上 mt-5 mb-4 .. 添加点上下的外边距 .. 里面绑定一个 post 里的 title ..

下面又是一个包装 .. 里面给它绑定一个 post 里的 content ...

实验

现在可以回到浏览器上去试一下 ... 访问一下 posts/1 ... 页面显示的就会是 id 号是 1 的这个文章内容 ..

再回到创建内容的这个页面 ..

现在成功创建了内容以后,可以把用户重定向到新创建的内容页面上 .. 回到项目 .. 找到 store 这个方法 .. 先把 response 解构出来 ..

然后让这个方法可以 return 一个重定向 .. response.redirect ... 重定向到的地址是 /posts .. 后面加上内容的 id 号 .. 这里就是 postID 里面的第一个项目 ..

回到创建内容资源的页面 .. 再试一下 ... 输入一个标题 ... 再输入一个正文 ... 然后提交一下 ....

成功以后,会把用户带到新创建的内容页面 ... 在这个页面会显示具体的某一个内容资源 ..

读取数据:显示单个内容资源《 Node.js 应用:查询构建器 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点