Laravel 5.2 и соединение mongodb [дубликат]

QueryPath хорош, но будьте осторожны с состоянием отслеживания, если вы не понимаете, что это значит, это может означать, что вы тратите много времени на отладку, пытаясь выяснить, что произошло, почему код не работает.

Что это означает, что каждый вызов в результирующем наборе изменяет набор результатов в объекте, он не связан с цепочкой, как в jquery, где каждая ссылка является новым набором, у вас есть единый набор, который является результатом вашего запроса, и каждый вызов функции изменяет этот единственный набор.

, чтобы получить jquery-подобное поведение, вам нужно разветвиться до того, как вы выполните операцию фильтрации / модификации, означает, что он будет более точно отражать то, что происходит в jquery.

$results = qp("div p");
$forename = $results->find("input[name='forename']");

$results теперь содержит результирующий набор для input[name='forename'] НЕ исходный запрос "div p", это сильно меня подтолкнуло, что Я обнаружил, что QueryPath отслеживает фильтры и находит и все, что изменяет ваши результаты и сохраняет их в объекте. вам нужно сделать это вместо

$forename = $results->branch()->find("input[name='forname']")

, тогда $results не будет изменено, и вы можете повторно использовать результирующий набор снова и снова, возможно, кто-то, у кого гораздо больше знаний, может немного прояснить это, но это в основном похоже на то, что я нашел.

0
задан Justin Sam S 4 January 2016 в 09:56
поделиться

1 ответ

Если вы находитесь в системе ubuntu, вы можете перейти по ссылке ниже, чтобы установить mongo в вашей системе https://gist.github.com/ankur13secret/3878e2cf80ef5ff2bb94 .

Или если вы находитесь в любой другой системе, сначала загрузите mongo и выполните настройку.

Чтобы начать использовать mongo в laravel, сначала вам нужно добавить драйвер mongo в ваш файл config/database.php, как показано ниже

'mongodb' => [
            'driver'   => 'mongodb',
            'host'     => env('DB_HOST', 'localhost'),
            'port'     => env('MONGO_DB_PORT', ''),
            'database' => env('MONGO_DATABASE', ''),
        ],

, то вам нужно добавить их в ваш .ENV-файл, как показано ниже

MONGO_DB_PORT = 27017
MONGO_DATABASE = your_database_name

. Для использования mongo я использую jenssegers package https: // github. com / jenssegers / laravel-mongodb . Сначала вам нужно установить его, и вам просто нужно выполнить еще несколько шагов, написанных там, и он будет работать нормально, если все будет хорошо.

2
ответ дан Faisal Ahsan 28 August 2018 в 08:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: