Изменениеразмераизображений
Изменениеразмераизображений
Подизайнустраницыконференциифотографиидолжныбытьразмеромнеболее200 x150пикселей。Можеттогданамстоитоптимизироватьиуменьшатьизображения,вслучаееслизагруженныефотографиипревышаютуказанныймаксимальныйразмер吗?
Идеальнымрешениембудетвключитьтакуюоперациювбизнес-процесскомментария:послепроверкиипередпубликациейкомментария。
Давайтедобавимновоесостояние准备好了
ипереход优化
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17日18 19 20 21日22日23日24日25日26日27 28 29
- - - / config /包/ workflow.yaml+ + + b / config /包/ workflow.yaml@@ -16 6 + 16 7 @@框架:potential_spam -垃圾邮件拒绝+ -准备好了-发布转换:接受:-29年@@ 13 + 30,16 @@框架::垃圾邮件发布:从:potential_spam-:发表+:准备好了拒绝:从:potential_spam:拒绝publish_ham::火腿-:发表+:准备好了reject_ham:从:火腿:拒绝+优化:+:准备好了发表的:+
Посмотрим,каквизуальновыглядитизмененныйбизнес-процесс,чтобыубедиться,чтоонкорректносоставлен:
1
美元ob娱乐下载symfony控制台工作流:转储|点-Tpng - o workflow.png置评
Оптимизацияизображенийспомощью想象
ОптимизироватьизображениябудемчерезмодульGD(долженбытьустановленнавашемкомпьютере)и想象一下:
1
美元ob娱乐下载symfony作曲家要求“想象/想象:^ 1.2”
Изменениеразмераизображениябудетпроисходитьвотдельномсервисномклассе:
Послеоптимизациифотографиизаменяемисходныйфайлнановый。Хотя、возможнопокаким-либопричинамвырешитеоставитьоригинальноеизображение。
Добавлениеновогошагавбизнес-процесс
Добавьтевбизнес-процессобработкуновогосостояния:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17日18 19 20 21日22日23日24日25日26日27 28 29 30 31 32
推荐- - - - - - MessageHandler / src / / CommentMessageHandler.php+ + + MessageHandler b / src / / CommentMessageHandler.php@@ 2,6 + 2,7 @@名称空间的应用程序\ MessageHandler;+使用App \ ImageOptimizer;使用App \ \ CommentMessage消息;使用App \ Repository \ CommentRepository;使用App \ SpamChecker;@@ -25年6 + 26日8 @@类CommentMessageHandler私有WorkflowInterface commentStateMachine美元,美元私人MailerInterface梅勒,#【自动装配(% admin_email %)]私人字符串adminEmail美元,+私人ImageOptimizer ImageOptimizer美元,+ #【自动装配(% photo_dir %)]私人字符串photoDir美元,私人? LoggerInterface记录器= null,美元){}@@ -54年6 + 57岁12 @@类CommentMessageHandler - > ($ this - > adminEmail) - >上下文([“评论”= >评论美元]));+}elseif ($ this - > commentStateMachine - >(评论美元,“优化”)){+如果($评论- > getPhotoFilename ()) {+ $ this - > imageOptimizer - >调整($ this - > photoDir。‘/’。$评论- > getPhotoFilename ());+}+ $ this - > commentStateMachine - >应用(美元评论,“优化”);+ $ this - > entityManager - >冲洗();}elseif ($ this - >日志记录器){$ this - >日志- >调试(“删除评论消息”,(“评论”= > $评论- > getId(),“国家”= > $评论- > getState ()));}
ОбратитевниманиенаавтоматическидоступнуюпеременнуюphotoDir美元
,таккакранееводномизпредыдущихшаговкэтомуименипеременнойвконтейнеремыпривязалисоответствующийпараметр:
Хранениезагруженныхданныхвпродакшене
Вконфигурационномфайле.platform.app.yaml
ужеуказанаспециальнаядиректориядлячтенияизаписизагруженныхфотографий。Однакоонасмонтированатольколокально。Чтобыкданнойдиректорииимелидоступвеб-контейнериворкердляобработкисообщенийвочереди,нужносоздатьфайловыйсервис:
1 2 3 4 5 6 7 8 9 10
- - - / .platform / services.yaml+ + + b / .platform / services.yaml@@ -11年7 @@清漆:vcl: 3 + 11日!包括类型:字符串路径:config.vcl++文件:+类型:网络存储:2.0+磁盘:256
Используйтеегодлядиректориизагруженныхфотографий:
1 2 3 4 5 6 7 8 9 10 11
- - - a / .platform.app.yaml+ + + b / .platform.app.yaml@@ -35 7 + 35 7 @@网络:坐骑:" / var ":{来源:当地source_path: var}——“公共/上传”:{来源:当地source_path:上传}+ " /公共/上传”:{来源:服务、服务:文件source_path:上传}关系:
Этогодолжнобытьдостаточнодляработывпродакшене。