laravel8快速开发简单博客系统(二)

目录

一、创建文章增删改成提交的控制器

1、注释文章查看权限,非登录状态可以查看文章列表页

2、创建提交控制器post

3、创建数据表

4、创建提交post资源路由

5、创建post控制器view目录post

二、文章添加功能实现

1.模板显示

2.复制home.blade.php模板到post下命名为create.blade.php

 3、控制器实现post

三、文章修改

1、控制器显示post

2、创建edit.blade.php模板文件

3、文章修改保存控制器

四、文章列表显示

1、模板文件home.blade.php

五、删除文章

1、模板home.blade.php

2、删除控制器post


laravel8快速开发简单博客系统(一)-CSDN博客

一、创建文章增删改成提交的控制器

1、注释文章查看权限,非登录状态可以查看文章列表页

   注释HomeController.php下//$this->middleware('auth');

修改模板文件

运行Sooma

2、创建提交控制器post

php artisan make:model Post --migration --resource

创建资源控制器(自动生成增删改查方法)和数据表

成功多了以下文件

 

3、创建数据表

增加数据表字段

更新数据表

php artisan migrate

 

4、创建提交post资源路由
Route::get('/', [App\Http\Controllers\HomeController::class, 'index'])->name( 'home');
Route::resource('/posts',App\Http\Controllers\PostController::class)->middleware('auth');

5、创建post控制器view目录post

 

二、文章添加功能实现

1.模板显示

2.复制home.blade.php模板到post下命名为create.blade.php

@extends('layouts.app')@section('content')
<div class="container"><div class="row justify-content-center"><div class="col-md-8"><h2>提交</h2>@if($errors->any())<div class="alert alert-danger"><ul>@foreach( $errors->all() as $error)<li>{{ $error }}</li>@endforeach</ul></div>@endif@if(session('success'))<div class='alert alert-success'>Updated Successfully!</div>@endif<form action="{{ route('posts.store') }}" method="post">@csrf<div class="form-group"><label for="title">标题</label><input type="text" class="form-control" id="title" name="title"></div><div class="form-group"><label for="title">内容</label><textarea  class="form-control" id="content" name="content" role="4"></textarea></div><button type="submit" class="btn btn-primary">提交</button></form></div></div>
</div>
@endsection
 3、控制器实现post
    /*** Store a newly created resource in storage.** @param  \Illuminate\Http\Request  $request* @return \Illuminate\Http\Response*/public function store(Request $request){//$request->validate(['title'=>'required','content'=>'required']);$post=new Post;$post->title=request('title');$post->content=request('content');$post->uid=\Auth::id();$post->save();return redirect()->to('/');}

三、文章修改

1、控制器显示post
  /*** Show the form for editing the specified resource.** @param  \App\Models\Post  $post* @return \Illuminate\Http\Response*/public function edit(Post $post){//return  view('post.edit',compact('post'));}
2、创建edit.blade.php模板文件
@extends('layouts.app')@section('content')
<div class="container"><div class="row justify-content-center"><div class="col-md-8"><h2>修改提交</h2>@if($errors->any())<div class="alert alert-danger"><ul>@foreach( $errors->all() as $error)<li>{{ $error }}</li>@endforeach</ul></div>@endif@if(session('success'))<div class='alert alert-success'>Updated Successfully!</div>@endif<form action="{{ route('posts.update',[$post->id]) }}" method="post">@csrf@method('put')<div class="form-group"><label for="title">标题</label><input type="text" class="form-control" id="title" name="title" value="{{ $post->title }}"></div><div class="form-group"><label for="title">内容</label><textarea  class="form-control" id="content" name="content" role="4" >{{ old('content',$post->content) }}</textarea></div><button type="submit" class="btn btn-primary">提交</button></form></div></div>
</div>
@endsection
3、文章修改保存控制器
   public function update(Request $request, Post $post){$request->validate(['title'=>'required','content'=>'required']);$post->title=request('title');$post->content=request('content');$post->uid=\Auth::id();$post->save();return redirect()->route('posts.edit',[$post->id])->with('success',true);}

四、文章列表显示

1、模板文件home.blade.php
@extends('layouts.app')@section('content')
<div class="container"><div class="row justify-content-center"><div class="col-md-8">@foreach(App\Models\Post::orderBy('created_at','DESC')->get() as $post)<div class="card"><div class="card-header">{{ $post->id }}&&{{ $post->title }}*****{{ $post->created_at }}</div><a href="{{ route('posts.edit',[$post->id] ) }}">修改</a><form action="{{ route('posts.destroy',[$post->id]) }}" method="post"><button type="submit" class="btn alert-danger"><a href="#">删除</a></button>@csrf@method('delete')</form><div class="card-body">{{ $post->content }}</div></div>@endforeach</div></div>
</div>
@endsection

五、删除文章

1、模板home.blade.php
  <form action="{{ route('posts.destroy',[$post->id]) }}" method="post"><button type="submit" class="btn alert-danger"><a href="#">删除</a></button>@csrf@method('delete')</form>
2、删除控制器post
    public function destroy(Post $post){//$post->delete();return redirect()->to('/');}

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Xilinx FPGA在线升级——升级思路

一、绪论 网上很多文章都讲述了Xilinx FPGA在线升级即回退的优势&#xff0c;在这里仅简述一遍。优势在于可不拆机的情况下改变FPGA的功能&#xff0c;可进行产品迭代。回退的优势是避免升级过程中一些突发情况导致板卡成为废板。至少Golden里面包含了可进行升级的部分代码。 …

108页PPT分享:华为流程体系及实施方法最佳实践

PPT下载链接见文末~ 华为的流程体系、流程框架及实施方法是一个复杂而精细的系统&#xff0c;旨在确保公司运作的高效性和竞争力。以下是对这些方面的详细描述&#xff1a; 一、华为的流程体系 华为的流程体系是一套全面的管理体系&#xff0c;它涵盖了企业所有的活动&#…

【C++标准模版库】模拟实现容器适配器:stack、queue、priority_queue(优先级队列)

stack和queue 一.容器适配器1.什么是适配器 二.模拟实现stack和queue三.STL标准库中stack和queue的底层结构四.deque&#xff08;双端队列&#xff09;的简单介绍五.deque作为stack和queue的默认容器的原因六.priority_queue&#xff08;优先级队列&#xff09;的介绍和使用七.…

[线程]线程不安全问题 --- 内存可见性 及wait和notify

文章目录 一. 由内存可见性引起线程不安全问题的例子二. 分析内存可见性产生的原因三. volatile 关键字(面试题)四. 线程的等待通知机制waitnotify 一. 由内存可见性引起线程不安全问题的例子 public class Demo17 {private static int count 0;public static void main(Stri…

linux下基本指令(持续更新)

目录 1.adduser 2.passwd 3.userdel 4. su - 5.ls 6.pwd ​编辑 7.cd 8.touch 9.mkdir &#x1f680; 10. rmdir && rm &#x1f680; 11.whoami &#xff08;who am i) 12.clear 13.tree (需要安装 yum install -y tree) 14.who 这里我用的是腾讯…

#网络编程 笔记

认识网络 网络发展史 ARPnetA--->Internet--->移动互联网--->物联网 TCP 用来检测网络传输中差错的传输控制协议 UDP 用户数据报协议&#xff0c;专门负责对不同网络进行互联的互联网协议 局域网 实现小范围短距离网络通信 广域网 现大范围长距离网络通信…

Python编码系列—Python项目架构的艺术:最佳实践与实战应用

&#x1f31f;&#x1f31f; 欢迎来到我的技术小筑&#xff0c;一个专为技术探索者打造的交流空间。在这里&#xff0c;我们不仅分享代码的智慧&#xff0c;还探讨技术的深度与广度。无论您是资深开发者还是技术新手&#xff0c;这里都有一片属于您的天空。让我们在知识的海洋中…

(一)、软硬件全开源智能手表,与手机互联,标配多表盘,功能丰富(ZSWatch-Zephyr)

ZSWatch是一个包括硬件、软件和3D打印外壳全部开源的智能手表&#xff0c;软件功能丰富&#xff0c;并可与手机互联用来接收信息和切换歌曲&#xff0c;开源协议为GPL-3.0。 因为ZSWatch建立在Zephyr™项目RTOS之上&#xff0c;因此得名ZSWatch- Zephyr&#xff0c;目前该项目…

HANA5 游戏逆向

前言 某著名百合R18游戏 以前尝试逆过一次&#xff0c;半途而废了。今天想起来再逆一下&#xff0c;记录下逆向的过程。 游戏文件结构&#xff1a; 游戏资源extract 主要目标是弄明白游戏资源&#xff1a;SE、CG这些怎么加载解密的。 还是像万华镜那样下三个API断点&…

稚晖君智元机器人远程机器人系列发布:引领具身智能新高度

在最近的发布会上&#xff0c;前华为“天才少年”稚晖君及其团队亮相了他们的最新作品——智元机器人的第二代远程机器人系列。这次发布会不仅展示了丰富的产品线&#xff0c;还揭示了其未来的发展路线以及开源计划。本文将详细解析本次发布会的亮点和技术背后的创新。 一、发…

Django国际化和本地化

【图书介绍】《Django 5企业级Web应用开发实战&#xff08;视频教学版&#xff09;》_django 5企业级web应用开发实战(视频教学版)-CSDN博客 《Django 5企业级Web应用开发实战&#xff08;视频教学版&#xff09;》(王金柱)【摘要 书评 试读】- 京东图书 (jd.com) 本节主要介…

【Go函数详解】二、参数传递、变长参数与多返回值

文章目录 一、传递参数1. 按值传参2. 引用传参2.1 特殊情况2.1.1 切片slice2.1.2 字典map 二、变长参数1. 基本定义和传值1.1 基本定义1.2 传值1.2.1 普通传值1.2.2 传递切片 2. 任意类型的变长参数&#xff08;泛型&#xff09; 三、多返回值1. 命名返回值 一、传递参数 1. 按…

customRef 与 ref

ref() 我们已经很熟悉了&#xff0c;就是用来定义响应式数据的&#xff0c;其底层原理还是通过 Object.defineprotpty 中的 get 实现收集依赖( trackRefValue 函数收集)&#xff0c;通过 set 实现分发依赖通知更新( triggerRefValue 函数分发 )。我们看看 ref 的源码就知道了 …

微气象在线监测系统:宏观层面的电网灾害预防和应急管理

微气象受局部地形&#xff08;如山谷、河谷&#xff09;、地物&#xff08;如建筑物、森林&#xff09;和地面条件&#xff08;如水面、农田&#xff09;的影响较大&#xff0c;而大范围气象环境则更多地受气候系统和天气模式的控制。输电线路微气象监测的主要目的是为了评估和…

YOLOv8环境搭建、创建数据集、训练推理教程(超级详细)

yolov8和yolov10 是一个流派&#xff0c;和yolov5区别还挺大&#xff0c;所以尝试使用yolov8来进行模型训练&#xff0c;下面是详细使用流程&#xff1a; 一、环境搭建 1.1 Anaconda安装 Anaconda是一个强大的开源数据科学平台,它将很多好的工具整合在一起&#xff0c;极大地…

华为海思招聘-芯片与器件设计工程师-数字芯片方向- 机试题——(共九套)(每套四十题)

华为海思招聘-芯片与器件设计工程师-数字芯片方向- 机试题-题目分享——共九套&#xff08;每套四十题&#xff09; 岗位——芯片与器件设计工程师 岗位意向——数字芯片 真题题目分享&#xff0c;完整版带答案(有答案和解析&#xff0c;答案非官方&#xff0c;未仔细校正&am…

论文阅读:VideoMamba: State Space Model for Efficient Video Understanding

论文地址&#xff1a;arxiv 摘要 为了解决视频理解中的局部冗余与全局依赖性的双重挑战。作者将 Mamba 模型应用于视频领域。所提出的 VideoMamba 克服了现有的 3D 卷积神经网络与视频 Transformer 的局限性。 经过广泛的评估提示了 VideoMamba 的能力&#xff1a; 在视觉领…

Hbuilder创建的项目(uniApp + Vue3)中引入UnoCSS原子css引擎

这里是UnoCSS的官网介绍 UnoCS通过简化和优化CSS的编写过程来提高Web开发的效率和可维护性。好处是&#xff1a; 提升开发效率提升开发效率提高一致性增强灵活性易于维护方便的集成与配置 同时还支持预设变量和规则。这些可参看官网进行配置。Unocss通过其原子化方法、高度的…

第二证券:静态市盈率与动态市盈率有什么区别?

市盈率&#xff08;PE&#xff09;&#xff0c;是指投资者愿意为每一元净利润所支付的价格。 股票的市盈率股票价格&#xff08;P&#xff09;/每股净利润&#xff08;EPS&#xff09;&#xff0c;或者用公司其时总市值/公司上一年总净利润。 动态市盈率与静态市盈率的区别&a…

<数据集>遥感航拍飞机和船舶和识别数据集<目标检测>

数据集格式&#xff1a;VOCYOLO格式 图片数量&#xff1a;19973张 标注数量(xml文件个数)&#xff1a;19973 标注数量(txt文件个数)&#xff1a;19973 标注类别数&#xff1a;2 标注类别名称&#xff1a;[ship,plane] 序号类别名称图片数框数1ship17575416292plane239815…