随笔分类 - Laravel
摘要:解决上一节当中如果api路由改成: 1 Route::middleware('auth:api')->post('/questions/follow', 'QuestionController@followThroughApi');之后 axios ajax post请求报 401 unauthorized 异常的问题。原理:Laravel PassportPassport OAuth 认证教程...
阅读全文
摘要:1.vue 目录位置:resources/js/componentsPhpStorm语法设置:1.1 在reources/js/components文件夹内新建一个QuestionFollowButton.vue文件【问题关注按钮vue组件】将原show.blade.php中的 关注按钮部分 移入新vue组件内部:初步样式:执行 1 npm install & npm run watch-pol...
阅读全文
摘要:1.添加授权策略为了让问题只能被登录用户关注 且用户关注与未关注的区别不同显示提示:使用policy 1 php artisan make:policy QuestionPolicyQuestionPolicy文件: 1 id === $question->user_id; 34 } 35 36 37 /** 38 * 判断用户是否有权删除问题 39 ...
阅读全文
摘要:1.添加路由 并 处理AnswerController内逻辑:路由:向web.php中添加: 1 #region 回答路由CRUD 2 3 //查看回答 以及 回答的form 都是在questions详细内容页面 4 5 //提交回答 6 Route::post('questions/{question}/answers', 'AnswerController@store')->n...
阅读全文
摘要:1.执行命令 1 php artisan make:model Answer –cmrf 一次性把model,及对应的controller migration factory 创建好,并且controller配置设置为resource2.修改****_**_**_******_create_answers_table.php: 1 bigIncrements('id'); 18 ...
阅读全文
摘要:1.取全部数据:将all方法添加到QuestionRepository: 1 map(function ($topic) { 39 if (is_numeric($topic))//是数字 40 { 41 //在数据库中找id 42 $num_topic = Topic::query(...
阅读全文
摘要:1.在question的show blade文件中提供编辑问题的入口【判断用户是否有权编辑,没有权限不显示编辑按钮】:使用Policy,执行命令: 1 php artisan make:Policy QuestionPolicy生成 QuestionPolicy.php文件: 1 id === $question->user_id; 33 } 34 }QuestionPolicy.ph...
阅读全文
摘要:关于Repository可以参考:为什么你应该使用 Repository推荐:好用的 Laravel Repository 包Repository 模式作用和实现原理PHP Laravel框架的 Repository 模式关于 Repository 的设计模式服务容器不过你不一定需要Repository,具体使用中,视情况而定:Laravel repository:Repository 模式和 E...
阅读全文
摘要:修改QuestionController.php如下:1.处理Topic: 1 /** 2 * @param array $topics 3 * @return array 4 */ 5 private function normalizeTopics(array $topics) 6 { 7 //返回topic的id序列,如果不是数字,则强制认为是数据库中的topic...
阅读全文
摘要:1.添加选择Topic使用Select2,如何安装Select2 ,具体使用实例 Select2 and Laravel: Ajax Autocomplete 及 Loading data remotely in Select2 – Laravel使用命令行: 1 composer require select2/select2完成后打开resources\app.scss,添加Select2引...
阅读全文
摘要:1.话题【Topic】执行命令: 1 php artisan make:model Topic –cmr修改****_**_**_create_topics_table.php数据库迁移文件如下: 1 class CreateTopicsTable extends Migration 2 { 3 /** 4 * Run the migrations. 5 *...
阅读全文
摘要:1.使用UEditor增量包:simple-ueditors执行下载: 1 git clone https://github.com/JellyBool/simple-ueditor.git2.用此项目的 ueditor 目录替换原来的 public/vendor/ueditor 目录;可以先删除原来的目录,移动simple-ueditor文件夹下ueditor整个文件夹的到public/ven...
阅读全文
摘要:上一节代码中已经实现 下面代码中的validate内部配置就是: 1 public function store(Request $request) 2 { 3 // 4 $data = $request->validate([ 5 'title' => 'required|min:8', 6 'c...
阅读全文
摘要:1.view部分:安装一个扩展包:Laravel-UEditor 1 composer require "overtrue/laravel-ueditor:~1.0"配置添加下面一行到 config/app.php 中 providers 部分: 1 Overtrue\LaravelUEditor\UEditorServiceProvider::class,发布配置文件与资源 1 php a...
阅读全文
摘要:1.执行命令: 1 php artisan make:model Models/Question -cm2.设计问题的数据库迁移文件中的字段: 1 bigIncrements('id'); 18 $table->string('title'); 19 $table->text('content'); 20 $table-...
阅读全文
摘要:资料 : Resetting Passwords 以及 Episode 35 - The Password Reset Flow由于之前的实现里默认自带重置找回密码功能,不再复述。默认的重置页面功能包含:指定用于A用户的重置链接输入B用户的邮箱提交后会提示 密码重置令牌无效,而密码输入不符合要求也有相应的错误提示,如果输入不存在的用户邮箱,会提示找不到,当且仅当用户A的重置链接输入正确的A用户...
阅读全文
摘要:1.本地化 由于所有blade默认采用的是 _(‘’)方式输出标签文本,所以可以安装一个语言包,直接指定本地语言为zh_CN即可;安装 https://github.com/caouecs/Laravel-lang 语言包:Laravel 5.8-6.0 版本: 在项目文件夹打开命令行,执行 composer require caouecs/laravel-lang:~4.0Laravel 5.1...
阅读全文
摘要:1.安装一个给用户提示的扩展包: 二选一: https://github.com/laracasts/flash 【我选的这个】https://github.com/oanhnn/laravel-flash-message使用方法:在需要使用falsh消息的控制器中,调用flash方法即可:如: 1 public function store() 2 { 3 //flash('Wel...
阅读全文
摘要:1.本节需要发送验证邮件2.教程使用SendCloud发送邮件 【我使用的是mailtrap】3. 1 composer require laravel/ui安装完成后 1 php artisan ui vue –auth4.RegisterController中create方法内实现用户创建的默认值配置 1 class RegisterController extends Control...
阅读全文
摘要:1.使用laragon新建laravel项目 zhihu2.配置env文件的database设置 DB_DATABASE=zhihu3.分析users表需要的字段4.修改数据库迁移文件: 1 class CreateUsersTable extends Migration 2 { 3 /** 4 * Run the migrations. 5 * 6 ...
阅读全文

浙公网安备 33010602011771号