首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Laravel中保存编辑页面的数据

在Laravel中保存编辑页面的数据可以通过以下步骤实现:

  1. 创建编辑页面:首先,需要创建一个编辑页面,用于展示要编辑的数据并提供保存按钮。可以使用Laravel的Blade模板引擎来创建视图文件,其中包含表单元素用于编辑数据。
  2. 定义路由:在routes/web.php文件中定义一个路由,将编辑页面的URL映射到一个控制器方法。例如,可以使用GET请求将/edit/{id}映射到EditController的edit方法,其中{id}是要编辑的数据的唯一标识符。
  3. 编写控制器方法:在EditController中的edit方法中,接收{id}参数,并使用该参数从数据库中获取要编辑的数据。然后,将数据传递给编辑页面的视图文件,以便在表单中显示。
  4. 更新数据:在编辑页面的表单中,使用POST请求将表单数据提交到一个新的控制器方法。可以使用Laravel的CSRF保护功能来防止跨站请求伪造。在控制器方法中,接收表单数据并使用{id}参数从数据库中获取要编辑的数据模型。然后,更新模型的属性并保存到数据库中。

以下是一个示例代码:

  1. 创建编辑页面的视图文件(edit.blade.php):
代码语言:txt
复制
<form action="/update/{{ $data->id }}" method="POST">
    @csrf
    <input type="text" name="name" value="{{ $data->name }}">
    <input type="text" name="email" value="{{ $data->email }}">
    <button type="submit">保存</button>
</form>
  1. 定义路由:
代码语言:txt
复制
Route::get('/edit/{id}', 'EditController@edit');
Route::post('/update/{id}', 'EditController@update');
  1. 编写EditController的edit和update方法:
代码语言:txt
复制
use App\Models\User;

class EditController extends Controller
{
    public function edit($id)
    {
        $data = User::find($id);
        return view('edit', compact('data'));
    }

    public function update(Request $request, $id)
    {
        $data = User::find($id);
        $data->name = $request->input('name');
        $data->email = $request->input('email');
        $data->save();

        return redirect('/edit/'.$id);
    }
}

在上述示例中,我们假设有一个名为User的模型,用于表示用户数据。在编辑页面中,我们使用{{ $data->name }}和{{ $data->email }}来显示要编辑的数据,并将表单数据提交到/update/{id}路由。在update方法中,我们通过$id参数获取要编辑的数据模型,并更新其属性后保存到数据库中。

请注意,上述示例仅为演示目的,实际应用中可能需要进行更多的验证和错误处理。另外,根据具体需求,可能需要使用其他Laravel功能,如表单验证、表单请求等。

推荐的腾讯云相关产品:腾讯云服务器(CVM)、腾讯云数据库(TencentDB)、腾讯云对象存储(COS)等。您可以访问腾讯云官方网站(https://cloud.tencent.com/)了解更多产品信息和文档。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑

有一个这样的需求: 当商品设置为立即上架时,通过审核就进入上架状态,当设置为保存时,通过审核就进入未上架状态。...所以,需要在保存前根据提交的审核状态和设置的方式得到商品状态再保存,而通过$form->model()->attribute_name只能获取提交后的值,不能更改。...Google之后发现了已经有解决方案:可以修改提交表单时的逻辑吗 #375 在模/ /型中添加如下方法: public static function boot() { parent::boot()...; static::saving(function ($model) { // 从$model取出数据并进行处理 }); } 以上这篇浅谈laravel-admin form中的数据,在提交后,保存前,...获取并进行编辑就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持/ /。

3.7K00

为什么 Laravel 这么优秀?

course_id" in (1) How to save data to database 如何将数据保存到数据库 Laravel Factory 提供了一种很好的方式来 Mock 测试数据,一旦我们定义好...Create Course # 接下来我们来看在 Laravel 中是如何优雅的保存数据,这部分的记录你可以参考下面这几个 commit: feat: create course chore: switch...,Laravel 会直接帮我们验证并返回错误信息,如下面的 teacher_id 在数据库中并不存在。...中可以高效的使用 Eloquent ORM 实现各种查询;如上面的例子中我们使用了 withCount 来查询课程的学生数量、用 with 加载课程对应的教师;还可以指定生成的 SQL 查询只包含某几个字段如...举个简单的例子,我们可以将一段文本通过各种过滤后再保存进数据库,如: (new Pipeline::class) ->send('This is the HTML content of a

26710
  • Vuebnb:一个用vue.js和Laravel构建的全栈应用

    我还用Laravel安全认证的API调用,这是让用户能够保存他们喜欢的房间列表。 特征 该项目的功能主要包括UI组件以及应用程序的总体架构设计。...让我们做一个简短的概述: 模态窗口 在列表页面的模态窗口,目的是让用户看房屋的照片获得更好的感觉。 模式窗口很难实现,因为它们不在页面元素的层次结构中,因此也很难与它们进行通信。...可以收藏从首页或列表页点击心形图标,这是可重用的组件的一个部分。 我通过Vuex存储状态,可以保持整个页面的使用。为了在会话中持久化状态,我通过Ajax将它发送回存储在数据库中的服务器。...通过Laravel的验证接口来验证相关API调用。 在后端和前端之间共享数据 全栈应用程序的关键考虑之一是如何在后端和前端之间进行数据通信,所以我花了相当多的时间来处理这本书中的问题。...但如果是用Vue-Router创建虚拟页面,如何检索后续页面的数据?

    6K10

    玩转 PhpStorm 系列(十):代码调试篇(下)

    所以,作为 PhpStorm 代码调试教程的姊妹篇,这篇教程学院君来给大家演示如何在 PhpStorm 中基于 Xdebug 扩展对 PHP Web 应用进行代码调试。...完成以上初始化操作后,就可以在 PhpStorm 中对 PHP Web 应用进行代码调试配置了,这里我们以一个 Laravel 应用作为示例 Web 项目。...在 PhpStorm 中配置 Web 服务器 接下来,我们就来演示如何在 PhpStorm 中基于 Xdebug 来对上述测试代码进行调试和问题定位。...这里的 PHP Web 应用部署在本地,如果是远程主机,例如 WSL、Docker、Homestead,还需要勾选下面的路径映射并进行配置。...通过 Xdebug 调试 Laravel 应用 完成上述配置后,在代码编辑器中设置断点: ?

    2.5K21

    通过 Laravel 创建一个 Vue 单页面应用(六)

    提醒一下,本教程并不关注权限;我们使用内置的 Laravel users 表演示如何在 Vue 路由器项目的上下文中使用 CURD。...以下是迄今为止的系列概要: 第1部分 – 设置项目和 Vue 路由器 第2部分 – 在 Vue 路由器中加载异步数据 第3部分 – 在 Laravel 中创建真实的用户端 第4部分 – 编辑用户 第5部分...添加 API 接口 我们准备在 Laravel 中添加 API 接口以创建新用户。这将类似于编辑现有用户。但是,此响应将返回 201 Created 状态代码。...我们将清除表单并重定向到用户的编辑页: onSubmit($event) { this.saving = true this.message = false api.create...这个教程带你了解了 Vue 中基础的 CRUD。 作为作业,你可以定义一个单独的用户表单组件来处理用户的新建和编辑(如果你认为它值得复用)。

    3.8K20

    通过 Laravel 创建一个 Vue 单页面应用(三)

    之前在 通过 Laravel 创建一个 Vue 单页应用(二) 中完成了 UsersIndex 组件异步地从 API 中加载用户。...当下一页或上一页在第一页和最后一页的边界处为空时,将禁用这些按钮。 代码中可能有一些冗余,但是此组件说明 vue-router了在进入路由之前用于获取数据的方法!...,还有一个简单的分页组件,该组件在后端使用 Laravel 的 API 模型资源进行简单的分页链接并将数据包装在 数据 键中。...接下来,我们将致力于创建,编辑和删除用户。...您可以继续进行 第4部分-编辑现有用户 原文地址: https://laravel-news.com/building-vue-spa-laravel-part-3 译文地址:https://learnku.com

    5.2K10

    通过 Laravel 创建一个 Vue 单页面应用(二)

    在这个教程中,我们通过学习怎样从 Vue 组件中的 Laravel API 加载异步数据,来继续在 Laravel 中创建一个 Vue 单页应用(SPA)。...如果你没有学习 第一部分,我们通过 Vue Router 和 Laravel 后端组建的 Vue 单页应用(SPA)。如果你想继续跟着学习的话,你应该先去完整地学习一下第一部分!...API 路由 Vue 单页应用是无状态的,这就要求我们发起 API 请求到 Laravel 路由的时候,需要通过定义在 routes/api.php 中的路由。...', 10)->make(); }); 我们的临时路由采用 模型工厂 来创建一个还没有保存到数据库的 Eloquent 模型集合。...在 第三部分 我们尝试在 Vue Router 中使用一个回调来获取数,在导航到组件之前,让你看看如何在渲染 router view 之前获取数据。

    3.4K30

    Laravel框架的核心架构,你懂多少?

    使用过larave框架的朋友都知道laravel框架里面除了提供一些基本的功能(如控制器、视图、模型)之外,还有中间件、门面、契约等,这些东西是如何在laravel框架运用起来的呢?...服务 说的就是提供给你所需要的东西,在laravel里面所提供的服务有 认证服务、数据库服务、缓存服务、队列服务等等。...Foundation 的 Application 用来创建服务提供者,创建好之后保存在Container 的 Container 的服务容器里面,交由他管理,Application 要继承 Container...对于我们的用户(最上面的用户)想使用laravel框架,必须通过控制器来使用(上面的Controller),使用laravel框架主要是使用laravel里面的服务提供者(上面的 new 服务),这样就是最传统的开发模式...事件:laravel里面的模型里面的事件,比如用户对数据库操作时做的一个监听。对整个项目运行进行监听,有监听的动作。类似tp5里面的钩子和行为。 中间件:做用户的请求做一定的过滤。

    2.9K20

    Laravel-博客实战+踩坑laravel-blog最终的效果踩的坑

    验证码 表单验证 后台权限和密码更改 文章分类 day2(8月01): 文章多级分类以及父分类 ajax修改排序 文章分类添加 文章分类编辑 文章分类ajax异步删除 day3(8月02): 文章添加以及百度编辑器...Ueditor嵌入 文章缩略图上传之uploadify(HTML5版本)的引入 文章分页列表 文章编辑 文章删除 day4(8月03): 数据库迁移以及数据填充 友情链接增删改查 自定义导航 前台文章首页...、列表页、文章模板 前台模板数据共享 day5(8月04) 配置项模块的创建 最新文章以及点击排行 公共侧边栏模板继承 文章页面信息以及详情 文章上一篇下一篇以及相关文章 项目地址 最终的效果 ?...文章详情页.png ?...with() return back()->with('msg','验证码错误');重定向至前一个页面,但传入的值用session('msg')无法取到 项目路由配置时,所有路由是配置在一个总的路由分组中,

    2.5K50

    玩转 PhpStorm 系列(一):主题篇

    下面的字体和字号控制的也是代码编辑器以外的区域字体和字号,不会对编辑器区域的字体和字号产生影响。...Color Scheme Font 中针对特定主题进行设置(勾选下红框圈中的复选框才可以编辑): ?...我们以 laravel.icls 为例来演示安装第三方主题(编辑器主题)。...重启 PhpStorm,就可以看到在编辑器主题选择列表里,可以支持切换到 Laravel 主题了: ?...好了,关于 PhpStorm 的主题切换、自定义以及如何安装第三方主题,学院君就简单介绍到这里,希望对你学习使用 PhpStorm 有所帮助,下篇教程,我们来演示如何在 PhpStorm 中通过菜单栏导航和快捷键快速进行文件和代码的导航

    2.9K40

    Laravel框架的核心架构,你懂多少?

    使用过larave框架的朋友都知道laravel框架里面除了提供一些基本的功能(如控制器、视图、模型)之外,还有中间件、门面、契约等,这些东西是如何在laravel框架运用起来的呢?...服务 说的就是提供给你所需要的东西,在laravel里面所提供的服务有 认证服务、数据库服务、缓存服务、队列服务等等。...Foundation 的 Application 用来创建服务提供者,创建好之后保存在Container 的 Container 的服务容器里面,交由他管理,Application 要继承 Container...对于我们的用户(最上面的用户)想使用laravel框架,必须通过控制器来使用(上面的Controller),使用laravel框架主要是使用laravel里面的服务提供者(上面的 new 服务),这样就是最传统的开发模式...事件:laravel里面的模型里面的事件,比如用户对数据库操作时做的一个监听。对整个项目运行进行监听,有监听的动作。类似tp5里面的钩子和行为。 中间件:做用户的请求做一定的过滤。

    3K10

    深入理解 Laravel 管道

    基本上,你可以使用 laravel 管道(pipelines)基于链式操作将对象传入多个类中执行任何类型的任务,并在所有「任务」执行完成后一次性返回最终结果。...你可以从 Laravel pipelines 获取更多相关知识。 有关管理工作原理的最常见的示例是在框架本身的组件中的使用。我这里说的就是「中间件」。...但客户端在它们创建或编辑时要求你自动删除标签。 下面是你需要做的事情: 替换文本中的 link 标签。 使用「*」替换掉敏感词。 移除文本中的 script 标签。...这里应该发生的是提交的内容将会被每个 \$pipes 修改,最终的返回的内容将被保存。...但是值得高兴的是在你的知识库中在需要的时候已经建立了管道这个新的武器的知识。 我希望这个实例能够让你对「Laravel Pipelines」有更深如的了解,并知道如何使用它们。

    3.3K20

    Laravel + Vue 3(Vite、TypeScript)SPA 设置

    在本教程中,我将向大家展示如何使用 Laravel + Vue 3 使用 typescript 和 Vite 设置你自己的单页应用程序。 这是在 Laravel 项目中添加 PWA 的手动方法。...第 1 步:让我们创建我们的 Laravel 项目 composer create-project laravel/laravel laravel-vue-manual 第 2 步:设置前端 在我们的...yarn build,它应该在laravel项目的根目录中的public文件夹中创建一个名为 app 的文件夹。...第 3 步:设置 Laravel 路由 让我们设置我们的 laravel 路由,以便我们可以访问我们刚刚创建的文件。 让我们编辑这个文件 routes\web.php <?...结论 我相信这也是大家可以在 laravel 项目中添加 pwa 的一种方式,这样你就可以将它们保存在一个项目中。

    2.7K31

    如何在Ubuntu 14.04上使用Ansible部署多个PHP应用程序

    在本教程中,我们将基于我们在前面的教程中学到的内容,将我们的单应用程序Ansible playbook转换为支持在一个或多个服务器上部署多个PHP应用程序的playbook。...branch: example domain: laravel.example.com 现在,打开你的剧本进行编辑: nano php.yml 在顶部vars部分,我们可以将我们的应用程序添加到新的应用程序列表中...第4步 - 在模板中应用循环变量 在本节中,我们将介绍如何在模板中使用循环变量。 模板中的循环变量非常简单。它们的使用方式与在任务中使用的方式完全相同,就像所有其他变量一样。...第6步 - 复杂的注册变量和循环 在本节中,我们将了解更复杂的已注册变量和循环。 转换中最复杂的部分是处理我们用于MySQL数据库密码生成的注册变量。...打开您的剧本进行编辑: nano php.yml 在顶部,在该vars部分中,找到applications块: applications: - name: laravel domain: laravel.example.com

    8.7K00

    Laravel 5 系列入门教程(一)【最适合中国人的 Laravel 教程】

    镜像配置完成后,切换到你想要放置该网站的目录下(如 C:\\wwwroot、/Library/WebServer/Documents/、/var/www/html、/etc/nginx/html 等),...体验 Auth 系统并完成安装 —— 经过上面的过程,Laravel 5 的安装成功了?...password' => 'Auth\PasswordController', ]); 跟随代码里的蛛丝马迹,让我们访问 http://fuck.io:88/home (请自行替换域名),结果竟然跳转到了登陆页?...数据库建立及迁移 Laravel 5 把数据库配置的地方改到了 `learnlaravel5/.env`,打开这个文件,编辑下面四项,修改为正确的信息: DB_HOST=localhost DB_DATABASE...Model 即为 MVC 中的 M,翻译为 模型,负责跟数据库交互。在 Eloquent 中,数据库中每一张表对应着一个 Model 类(当然也可以对应多个)。

    3.5K20

    【Laravel系统3.3】控制器与表单验证

    } 保存你编辑的数据 DELETE /test/resource/{id} 删除 是不是感觉很高大上,确实如此,而且这一套路由也是非常符合 RESTFul 规范的,并且最主要的是,这一套路由不需要我们再手动去写了...action 里面的 uses 字段里面的内容,它保存的就是我们在路由中填写的控制器信息。...传递过来的数据就是我们在路由文件中定义的数据,也就是调 get()/post() 这些方法的时候添加的数据。...首先我们需要定义一个页面,这个页面用于提交表单,只需要简单的定义一个模板页就可以。...在初始化的时候,会将数据 data 、 规则 initialRules 、提示消息 customMessages 存放到这个对象的相关变量中,然后通过对象里面的 validateAttribute()

    8.7K20

    通过 Laravel 创建一个 Vue 单页面应用(四)

    在 app/Http/Controllers/Api/UsersController.php 中添加下面的方法: // app/Http/Controllers/Api/UsersController...在 UsersEdit 组件中加载用户数据 现在我们有了一个可复用但很简陋的api客户端,当编辑页面生成之后我们使用它来获取用户数据。...这是我在 第二部分 创建了 UsersIndex.vue 模板,并为 /users 索引页上列出了每个用户添加编辑链接的方式: <li v-for="{ id...', component: UsersEdit, }, 如果您刷新应用程序或访问  /users 端点,您将看到如下内容: 将他们放在一起 如果你现在想编辑一个用户,在后台需要保存它并返回一个 200...既然我们有了编辑用户的动态路由,我们也将定义一个全局404页面。 如果您准备好了,请继续 第五部分。

    2K10

    如何在Ubuntu 14.04上使用Ansible部署高级PHP应用程序

    和以前一样,打开php.yml文件进行编辑。 nano php.yml 找到install packages任务,并更新它以包含上面的包: . . ....保存并运行剧本: ansible-playbook php.yml --ask-sudo-pass 第5步 - 设置MySQL数据库 在这一步中,我们将为我们的应用程序创建一个MySQL数据库。...第6步 - 为数据库配置PHP应用程序 在此步骤中,我们将MySQL数据库密码保存到.env应用程序的文件中。 就像我们在上一个教程中所做的那样,我们将更新.env文件以包含我们新创建的数据库凭据。...第7步 - 迁移数据库 在此步骤中,我们将运行数据库迁移以设置数据库表。...我们在上一步中启动的cron作业将作业推送到队列中。此作业在运行时更新数据库以显示其正在运行。 我们现在有一个工作示例Laravel应用程序,其中包括正常运行的cron作业和队列工作程序。

    10.7K60

    通过 Laravel 创建一个 Vue 单页面应用(五)

    得益于 Laravel 的路由模型绑定,我们只需要在 UsersController 中添加寥寥几行的代码就可以实现删除单个用户的功能: public function destroy(User $user...如何对成功删除用户作出相应的反馈 与更新一个用户不同的一点是,一旦我们成功删除了一个用户记录,那么数据库中就没有这个用户的记录了。在传统的网页应用中,我们会删除那条用户记录,然后重定向返回用户列表。...在我们的SPA单页应用中,我们也可以通过编程方式将用户导航到 /users 页面的方式来实现这一点: this....$router.push({ name: 'users.index' }), 2000); }); } 上面的代码设置了我们在第 4 部分中设置的 this.message 数据属性和在导航至... 因为在后端的Laravel程序中存在一个万能路由, 这意味着前端也需要这么一个万能路由,当访问路径与已经定义的路由不匹配时以一个404页面作为响应。

    4.4K20
    领券