二刷Laravel 教程(构建页面)总结Ⅰ

L01 Laravel 教程 - Web 开发实战入门 ( Laravel 9.x )

一、功能

1.会话控制(登录、退出、记住我)

2.用户功能(注册、用户激活、密码重设、邮件发送、个人中心、用户列表、用户删除)

3.静态页面(首页、关于、帮助)

4.微博数据(发布微博、删除微博、微博列表)

5.社交功能(关注用户、取消关注、关注和粉丝列表页面、社交统计信息、关注用户动态流)


首先安装了小皮(php、composer)nodejs、npm


二、创建应用

1)cmd创建

composer create-project laravel/laravel weibo --prefer-dist "9.1.*"

2)在小皮上搭个站点

用小皮搭站点


三、统一代码风格

.editorconfig 文件下面加上配置信息

用于指定代码的缩进样式和大小。

php 复制代码
[*.{js,html,blade.php,css,scss,vue}]
indent_style = space
indent_size = 2

根据这个文件的设置,代码文件的缩进使用空格,每个缩进级别为2个空格。

这个文件适用于JavaScript、HTML、Blade模板、CSS、SCSS和Vue文件。

通过这个配置文件,你可以确保在不同的编辑器中保持一致的缩进样式。


四、静态页面

1)移除无用视图

rm resources/views/welcome.blade.php

2)MVC

MVC是一种软件架构设计模式

Model(模型)、View(视图)和 Controller(控制器)

1.用户在地址栏输入URL并访问

2.路由将URL请求映射到指定的控制器上

3.控制器与数据模型进行数据存取交互

4.控制器在数据读取完毕后,讲数据传给视图进行渲染

5.视图渲染完成在浏览器呈现完整页面

我理解的就是:

1.模型(Model)是与数据库(Database)相关联的,简而言之,就是在模型里面获取数据库数据

2.模型(Model)获取的数据就会与控制器(Controller)进行交互

3.(控制器一般写的就是处理该 URL 的控制器动作

4.最后在进行视图(View)的渲染

5.简而言之,就是控制器作为一个红娘,牵红线的人,将视图和模型相关联


3)配置路由

routes/web.php

php 复制代码
Route::get('/', 'StaticPagesController@home');
Route::get('/help', 'StaticPagesController@help');
Route::get('/about', 'StaticPagesController@about');

在 Laravel 中我们较为常用的几个基本的 HTTP 操作分别为 GET、POST、PATCH、DELETE

GET 常用于页面读取

POST 常用于数据提交

PATCH 常用于数据更新

DELETE 常用于数据删除


4)生成静态页面的控制器

php artisan make:controller StaticPagesController

生成的控制器文件里面有一个命名空间

所以在给StaticPagesController文件增加了动作之后

要前往路由的服务提供者类中设置命名空间

protected $namespace = 'App\\Http\\Controllers'; (受保护的)


namespace方法用于指定控制器命名空间。

在这里,$this->namespace表示从当前类的命名空间继承

Route::middleware('web')
->namespace($this->namespace)

->group(base_path('routes/web.php'));

这段代码的作用是将web.php文件中定义的路由应用到web中间件,并且将控制器的命名空间设为$this->namespace。


>>>app/Providers(存放『服务提供者』文件)

在Laravel框架中,服务提供者(Service Provider)文件通常存放在app/Providers目录下。

服务提供者在Laravel中扮演着非常重要的角色,用于注册和绑定各种服务、组件和功能。

app/Providers 目录下,

你可以找到一些默认的服务提供者文件,如 AppServiceProvider.php、EventServiceProvider.php 和 RouteServiceProvider.php........这些文件分别负责注册应用程序的基本服务、事件服务和路由服务。

除了默认的服务提供者文件,你也可以创建自己的服务提供者文件。你可以根据需要在 `app/Providers` 目录下创建新的服务提供者文件,以便注册和绑定自定义的服务、组件和功能。

在创建服务提供者文件后,需要在 config/app.php 配置文件的 providers 数组中添加相应的服务提供者类。

这样,Laravel框架在启动时会自动加载并注册这些服务提供者,使其可以被应用程序使用。

总结起来,服务提供者文件通常存放在 app/Providers 目录下,你可以在该目录下创建新的服务提供者文件,并在 config/app.php配置文件中注册这些服务提供者。


五、模板切分

1)@section和@yield(@section填充@yield)


>>>只有一个参数时:

父:

php 复制代码
@yield('content')//占位区域

子:

php 复制代码
@section('content')
  <h1>主页</h1>
@stop

>>>两个参数时

@yield('该区块的变量名称', '默认值')

当@section传递了第二个参数时,就不需要@stop标识来告诉Laravel填充区块具体在那个位置结束

>>>在 @yield 区块后面进行内容拼接(丰富内容)
php 复制代码
  <title>@yield('title','Weibo App') - Laravel 新手入门教程</title>

2)@extends用来继承

php 复制代码
@extends('layouts.default')

六、Artisan命令

相关推荐
2401_8574396920 分钟前
SSM 架构下 Vue 电脑测评系统:为电脑性能评估赋能
开发语言·php
Smile灬凉城6667 小时前
反序列化为啥可以利用加号绕过php正则匹配
开发语言·php
奥顺9 小时前
PHPUnit使用指南:编写高效的单元测试
大数据·mysql·开源·php
黑客Jack10 小时前
网络安全加密
安全·web安全·php
龙哥·三年风水13 小时前
workman服务端开发模式-应用开发-后端api推送修改二
分布式·gateway·php
计算机徐师兄14 小时前
基于TP5框架的家具购物小程序的设计与实现【附源码、文档】
小程序·php·家具购物小程序·家具购物微信小程序·家具购物
希雅不是希望15 小时前
Ubuntu命令行网络配置
网络·ubuntu·php
龙哥·三年风水17 小时前
workman服务端开发模式-应用开发-后端api推送修改一
分布式·gateway·php
开心工作室_kaic1 天前
springboot461学生成绩分析和弱项辅助系统设计(论文+源码)_kaic
开发语言·数据库·vue.js·php·apache
火³可²1 天前
PHP接入美团联盟推广
开发语言·php