Laravel/framework 5.5.22 发布
22

本文翻译整理自 Laravel 5.5.22 Released

Laravel v5.5.222017年11月28日 发布,添加了一些有用的方法,从存储中返回一个文件作为响应,以及添加了一些不错的数据库。

Jonathan Reinink 增加了对文件系统的支持:response()download() 方法。

在某些情况下,您可能希望从存储中返回控制器中的文件或强制下载:

class DocumentController extends Controller
{
    public function show(Document $document)
    {
        // Return the document as a response
        return Storage::response($document->path);

        // Use a custom filename
        return Storage::response($document->path, 'sweet.pdf');

        // Force the file to download
        return Storage::download($document->path);
    }
}

Paulo Freitas 增加了更好的临时表支持,它增加了对 SQL Server 的临时表支持,使 $table->temporary() 可用于任何数据库驱动程序,并且还为临时表创建添加了测试范围。

Paulo 还为支持它们的数据库(MySQL,PostgreSQL 和 SQL Server)在 DateTime列上添加了更好的精度支持。由于与数据库默认精度和 Laravel 的默认有一些不一致的地方, 在 SQL Server 中还不完全正常,但是这对 SQL Server 的 DateTime 列精度处理来说是一个已经存在的问题。

一个值得注意的去除是基本 where 方法中的 between 运算符。

使用 between 目前不工作,并产生错误的SQL:

\App\User::where('created_at', 'between', ['2017-01-01', '2017-01-30'])->get();

它会生成:

select * from users where created_at between 2017-01-01

现在,你应该使用 whereBetween(就像使用whereIn一样)。

v5.5.22(2017-11-27)

添加

  • 向文件系统添加了 response()download() 方法 #22089
  • 增加了完整的临时表支持 #22110
  • 增加了 Mode::newQueryForRestoration() 方法 #22119
  • 增加了对日期/时间列的精确支持 #22122
  • 添加了对 MySQL Galera 死锁的检测 #22214

变更

  • 更新 MailFake::queue() 方法签名 #22072
  • 使用 MEDIUMTEXT 而不是 TEXT 作为数据库缓存值 (仅限MySQL) #22091
  • 默认情况下,在输出电子邮件中包含计划作业的名称 #22098
  • 支持 SQL ServerDblib 版本配置 #22102
  • 使用 SoftDeletes 强制删除模型时,将 Model::$exists 设置为 false #22100
  • 使 HasAttributes::fromDateTime() 支持空字符串 #22108
  • throw_* 助手返回条件 #22149
  • 使 Collection::where() 独立于错误报告 #22172
  • json 翻译文件包含错误时显示更多有意义的消息(#22165cf29b88
  • 提高 Model::getTable() 性能 #22222
  • Sql server 数据库中运行 migrations 文件时可以使用 transaction(事务) 功能 #22187

修复

  • whereHas 中使用时,修复 HasManyThrough 与自定义键的关系( #220713788cbd
  • 修复了 DATETIME 列的 SQL Server 处理 #22052
  • session 不可用时,从 old() 返回默认值 #22082
  • 重构 Arr::flatten() 以防止性能问题 #22103
  • 确保MYSQL JSON键在更新JSON列时使用双引号 #22118
  • 修复了 AWS 存储前缀 (root) 的自定义 URL #22130
  • 如果 password 是唯一指定的字段,则阻止验证 #22167

删除

  • 从基本的 where 子句中删除 between 比较符 #22182
本帖由 Summer 于 9个月前 加精
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 11
Destiny

老乡?

9个月前

老乡,我只是换了个头像,你就不认识我了,我很伤心啊 :joy:

9个月前
godruoyi

是老乡

9个月前

@godruoyi 好多老乡! :joy:

9个月前

老乡?!

9个月前

@随遇而安 老乡! :joy:

9个月前
Patrick95

居然是老乡啊!

9个月前

@Patrick95 我在想要不要专门开个帖子来认老乡。。。 :sweat_smile:

9个月前
Destiny

@Seaony 我觉得可以。哈哈哈

9个月前

@Destiny 歪下楼,我找了很久,没有找到semantic的资料,文档没有翻译完,或者说没有bs清晰,想问下你能够在哪找到合适的资料来弄semantic。

9个月前
Destiny

@仰望 我是看到官方文档,文档上面有很多例子,直接拉过来用就可以了。。。。。。直接上,先别管文档

9个月前

  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 Emoji 自动补全来咯,可用的 Emoji 请见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!