二刷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命令

相关推荐
网络安全-杰克3 小时前
关于网络安全里蜜罐的详细介绍
安全·web安全·php
云空5 小时前
《InsCode AI IDE:编程新时代的引领者》
java·javascript·c++·ide·人工智能·python·php
网安_秋刀鱼11 小时前
PHP代码审计 - SQL注入
sql·web安全·网络安全·php·1024程序员节
B20080116刘实11 小时前
CTF攻防世界小白刷题自学笔记13
开发语言·笔记·web安全·网络安全·php
数据小小爬虫16 小时前
如何用Java爬虫“偷窥”淘宝商品类目API的返回值
java·爬虫·php
汤米粥18 小时前
小皮PHP连接数据库提示could not find driver
开发语言·php
fakaifa20 小时前
CRMEB Pro版v3.1源码全开源+PC端+Uniapp前端+搭建教程
前端·小程序·uni-app·php·源码下载
万岳软件开发小城1 天前
外卖跑腿APP开发实战:如何基于同城O2O系统源码搭建平台
php·app开发·同城o2o系统源码·同城外卖跑腿系统源码·外卖平台开发·外卖app
数勋API1 天前
银行卡归属地查询API接口如何用PHP调用
开发语言·云计算·php
多客软件佳佳1 天前
校园交友系统的设计与实现(开源版+三端交付+搭建+售后)
小程序·前端框架·uni-app·开源·php·交友