You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Если вы не используете [регион Mailgun](https://documentation.mailgun.com/en/latest/api-intro.html#mailgun-regions) США, то вы можете определить конечную точку своего региона в конфигурации файла `services`:
61
+
Если вы не используете [регион Mailgun](https://documentation.mailgun.com/docs/mailgun/api-reference/#mailgun-regions) США, то вы можете определить конечную точку своего региона в конфигурации файла `services`:
Иногда приложения хранят предпочтительный язык каждого пользователя. Реализуя контракт `HasLocalePreference` в ваших моделях, вы можете указать Laravel использовать этот сохраненный язык при отправке почты:
Laravel предоставляет разнообразные методы для анализа структуры вашего класса для отправки электронной почты. Кроме того, Laravel предоставляет несколько удобных методов для проверки наличия ожидаемого содержимого в вашем классе для отправки электронной почты. Эти методы включают в себя: `assertSeeInHtml`, `assertDontSeeInHtml`, `assertSeeInOrderInHtml`, `assertSeeInText`, `assertDontSeeInText`, `assertSeeInOrderInText`, `assertHasAttachment`, `assertHasAttachedData`, `assertHasAttachmentFromStorage` и `assertHasAttachmentFromStorageDisk`.
1155
-
1156
-
Как и следовало ожидать, утверждения «HTML» утверждают, что HTML-версия вашего почтового сообщения содержит переданную строку, в то время как утверждения «текст» утверждают, что текстовая версия вашего почтового сообщения содержит переданную строку:
1156
+
Laravel предоставляет множество методов для проверки структуры почтовых сообщений. Кроме того, Laravel предлагает несколько удобных методов для проверки того, что ваше почтовое сообщение содержит ожидаемый контент:
1157
1157
1158
1158
```php tab=Pest
1159
1159
use App\Mail\InvoicePaid;
@@ -1174,10 +1174,11 @@ test('mailable content', function () {
1174
1174
$mailable->assertHasMetadata('key', 'value');
1175
1175
1176
1176
$mailable->assertSeeInHtml($user->email);
1177
-
$mailable->assertSeeInHtml('Invoice Paid');
1177
+
$mailable->assertDontSeeInHtml('Invoice Not Paid');
@@ -1222,6 +1224,8 @@ public function test_mailable_content(): void
1222
1224
}
1223
1225
```
1224
1226
1227
+
Как и следовало ожидать, утверждения «HTML» утверждают, что HTML-версия вашего почтового сообщения содержит заданную строку, тогда как утверждения «text» утверждают, что версия вашего почтового сообщения в виде простого текста содержит заданную строку.
1228
+
1225
1229
<aname="testing-mailable-sending"></a>
1226
1230
### Тестирование отправки почтовых сообщений
1227
1231
@@ -1430,9 +1434,13 @@ class LogMessage
1430
1434
<aname="custom-transports"></a>
1431
1435
## Пользовательские транспорты
1432
1436
1433
-
Laravel включает в себя разнообразные транспорты для отправки электронной почты; однако, возможно, вам захочется написать собственные для доставки электронной почты через другие службы, которые Laravel не поддерживает "из коробки". Для начала определите класс, который расширяет класс `Symfony\Component\Mailer\Transport\AbstractTransport`. Затем реализуйте методы `doSend` и `__toString()` в вашем транспорте:
1437
+
Laravel включает в себя разнообразные транспорты для отправки электронной почты; однако, возможно, вам захочется написать собственные для доставки электронной почты через другие службы, которые Laravel не поддерживает "из коробки". Для начала определите класс, который расширяет класс `Symfony\Component\Mailer\Transport\AbstractTransport`. Затем реализуйте методы `doSend` и `__toString` в вашем транспорте:
1434
1438
1435
1439
```php
1440
+
<?php
1441
+
1442
+
namespace App\Mail;
1443
+
1436
1444
use MailchimpTransactional\ApiClient;
1437
1445
use Symfony\Component\Mailer\SentMessage;
1438
1446
use Symfony\Component\Mailer\Transport\AbstractTransport;
@@ -1477,19 +1485,24 @@ class MailchimpTransport extends AbstractTransport
1477
1485
}
1478
1486
```
1479
1487
1480
-
После того как вы определите свой собственный транспорт, вы можете зарегистрировать его с помощью метода `extend`, предоставляемого фасадом `Mail`. Обычно это следует делать в методе `boot`служб-поставщиков вашего приложения, который находится в службе `AppServiceProvider`. Вам передается аргумент `$config`, который содержит массив конфигурации, определенной для отправителя почты в конфигурационном файле `config/mail.php` вашего приложения:
1488
+
После того как вы определите свой собственный транспорт, вы можете зарегистрировать его с помощью метода `extend`, предоставляемого фасадом `Mail`. Обычно это следует делать в методе `boot`объекта `AppServiceProvider` вашего приложения. Вам передается аргумент `$config`, который содержит массив конфигурации, определенной для отправителя почты в конфигурационном файле `config/mail.php` вашего приложения:
1481
1489
1482
1490
```php
1483
1491
use App\Mail\MailchimpTransport;
1484
1492
use Illuminate\Support\Facades\Mail;
1493
+
use MailchimpTransactional\ApiClient;
1485
1494
1486
1495
/**
1487
1496
* Bootstrap any application services.
1488
1497
*/
1489
1498
public function boot(): void
1490
1499
{
1491
1500
Mail::extend('mailchimp', function (array $config = []) {
1492
-
return new MailchimpTransport(/* ... */);
1501
+
$client = new ApiClient;
1502
+
1503
+
$client->setApiKey($config['key']);
1504
+
1505
+
return new MailchimpTransport($client);
1493
1506
});
1494
1507
}
1495
1508
```
@@ -1499,6 +1512,7 @@ public function boot(): void
0 commit comments