Получить фабричные отношения данных для тестирования Laravel

согласно laravel-база данных-тестирование

У меня есть фабричные отношения для тестирования данных, мой код такой

 public function test_users_can_authenticate_using_the_login_screen()
    {
        $this->seed(RoleSeeder::class);
        $data = Organization::factory()
            ->count(1)
            ->has(User::factory()->count(2), 'users')
            ->create();

        $response = $this->post('/login', [
            'email' => $data->email,
            'password' => 'password',
        ]);

        $this->assertAuthenticated();
        $response->assertRedirect(RouteServiceProvider::HOME);
    }

Как мне получить данные пользователя-> электронной почты ??, когда я пытаюсь $data->email или $data->users не найден?

Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
Что нового в PHP 8.1?
Что нового в PHP 8.1?
Если вы все еще используете PHP 7, то эта статья для вас. В PHP 8, а именно в PHP 8.1, встроены некоторые очень востребованные функции, которые вам...
Разработка LMS на заказ для повышения эффективности работы и обучения
Разработка LMS на заказ для повышения эффективности работы и обучения
За последние годы в образовании произошла большая революция, и сегодня почти все учебные заведения делают упор на эксклюзивное управление учебным...
1
0
28
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы добавили отношения для обеих моделей (Организация и Пользователь)?

Если да, то вам нужно проверить конкретного пользователя, которого вы хотите захватить. Так как он возвращает массив пользователей.

попробуйте это, например

$data = Organization::factory()
            ->count(1)
            ->has(User::factory()->count(2), 'users')
            ->create();
$firstUserEmail = $data->users[0]->email;

Я вижу, когда мы используем count(1), тип данных — массив, спасибо.

ssembara 23.04.2022 05:58

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