Получение пустого значения переменной в представлении почты laravel

Я назначил общедоступные переменные в почтовом сообщении. Я получаю некоторые значения ключей, но получаю пустые значения из ключей, которые я назначил позже. Я также реализую очереди.

В моем контроллере:

public function changeOrderStatus(Order $order){

    $order->type = $request->type; //getting these two keys empty i.e.type and amount
    $order->amount = $transaction->amount;
    $mail = new CancelRefundOrder($order);

}

В моем /App/Mail/CancelRefundOrder.php

class CancelRefundOrder extends Mailable implements ShouldQueue
{
    use Queueable, SerializesModels;
    public $order;
    public $order_type;

    public function __construct($order)
    {
        $this->order = $order;        
        $this->order_type = $order->type;        
    }

    public function build()
    {
        return $this->view('emails.ecommerce.cancel_refund_order_mail');
    }
}

Если я здесь dd($order_type), я получаю значение. Но в моем клинке cancel_refund_order_mail я получаю пустое значение на {{$order_type}} или {{$order->type}}, почему?

Вы передаете $order как модель или как идентификатор, принадлежащий модели? Попробуйте public function __construct(Order $order)

Mike 31.12.2018 11:56

$ заказать как модель.

rakesh shrestha 31.12.2018 15:19
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
1
2
301
1

Ответы 1

Если вы не хотите передавать $ order как экземпляр модели заказа, вы можете просто передать лезвие с порядком в качестве переменной.

это будет входить в ваши методы сборки

публичная функция build () { вернуть $ this-> view ('emails.ecommerce.cancel_refund_order_mail') -> with (['order' => $ this-> order, 'order_type' => $ this-> order_type]); }

Хм .. но модель сборки напрямую берет публичное свойство класса. Нет необходимости использовать with.

rakesh shrestha 03.01.2019 07:35

Что, если бы заказ был ассоциативным массивом, использование его в качестве экземпляра Order привело бы к ошибке

arun 03.01.2019 07:45

Другие вопросы по теме