新しい ObjectId を作る
@mongo shell
ObjectId();
@php
new MongoDB/BSON/ObjectId;
PHP側でnamespaceを使っていたら…
use MongoDB\BSON\ObjectID;
new ObjectID;
参考:
PHP: MongoDB\BSON\ObjectId - Manual
新しい ObjectId を作る
@mongo shell
ObjectId();
@php
new MongoDB/BSON/ObjectId;
PHP側でnamespaceを使っていたら…
use MongoDB\BSON\ObjectID;
new ObjectID;
参考:
PHP: MongoDB\BSON\ObjectId - Manual
updated: 2018/10/3
@vue
?page=1 のクエリを添えてGET
@laravel
$request->page で欲しいpage番号を指定
forPage() はpage1 と page2以降で返り値の挙動に差があるエラーがあるので下記参照
updated: 2021/6/1
jenssegers/mongodb の mysql relationships で使用可能なことが確認済み
php artisan make:factory FACTORY_NAME
factory1
factory2
seeds/DatabaseSeeder.php
おまけ
ランダムな文字列を生成
return [
'randomText' => $faker->regexify('[A-Za-z0-9]{' . mt_rand(4, 20) . '}'
]
php artisan db:seed
これでfaker モックアップ + user と 某model のrelationship に整合性が取れたDBができる。
参考:
Updated: 2018/9/27
PHP: Installing the MongoDB PHP Driver with PECL - Manual
sudo pecl install mongodb でエラーが出るので
sudo pecl install mongodb
composer require jenssegers/mongodb
successfully installed!!
@config/app.php
'mongodb' => [ 'driver' => 'mongodb', 'host' => env('DB_HOST', 'localhost'), 'port' => env('DB_PORT', 27017), 'database' => env('DB_DATABASE'), 'username' => env('DB_USERNAME'), 'password' => env('DB_PASSWORD'), 'options' => [ 'database' => 'admin' // sets the authentication database required by mongo 3 ] ],
MongoDBのauth設定をしていない(./mongod でWARNING で表示される)なら'user_name' 'password' をコメントアウト
'port' => env('DB_PORT', 27017), としておくとなぜか
違うport につながってエラーになるので
'port' => env(27017)
にするとOK