接下来两天会在laravel使用mongodb跟Vue实作CRUD,而今天主要是环境的设定。
在开始前请先安装mongodb套件,主要建立mongodb连线
composer require jenssegers/mongodb ^3.6
安装成功之後,在laravel的config/app.php的providers,新增这行
Jenssegers\Mongodb\MongodbServiceProvider::class,
如是用Windows+XAMPP注意事项
在laravel安装mongodb会显示错误
To enable extensions, verify that they are enabled in your .ini files:
- C:\xampp\php\php.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
确认XAMPP是32位元或64位元
从PECL下载最新PHP for MongoDB
的DLL档,选择自己环境的PHP版本&OS版本[Thread Safe (TS)
],下载php_mongodb.dll
,并将档案放置xampp中。
C:\xampp\php\ext
下开启php.ini
,新增一行extension=php_mongodb
,即可重新composer required jenssegers/mongodb ^3.6
mongodb
在开发环境需安装mongodb
Robo 3T是可以检视mongodb的工具,安装完之後,建立connection、database、collection
资料
在Robo 3T
以json
格式建立资料,可以想像成key
就是栏位,value
是资料,跟资料库的差异是mongodb
没有资料表栏位限制,可自行在collection
建立多个Key Value
mongodb连线
在laravel
使用.env、database
设定连线,在model
建立mongodb
的Collection
的物件,与mysql
设定上有点差异
// mysql port 3306,mongodb port 27017
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=users
DB_USERNAME=root
DB_PASSWORD=
DB_CONNECTION=mongodb
DB_HOST=127.0.0.1
DB_PORT=27017
DB_DATABASE=mydb
DB_USERNAME=
DB_PASSWORD=
//database
'connections' => [
'mysql' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'users'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
],
'mongodb' => [
'driver' => 'mongodb',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', 27017),
'database' => env('DB_DATABASE', 'mydb'),
'username' => env('DB_USERNAME', ''),
'password' => env('DB_PASSWORD', ''),
'options' => [
'database' => env('DB_AUTHENTICATION_DATABASE', 'admin'),
],
],
]
//mysql set table name
protected $table = 'users';
//mongodb set collection
protected $collection= 'mydb';
>>: Day27 laravel todolist 建立使用者群组
Vue.js 的自我介绍中,只有说自己接近 MVVM 但不是严格的 MVVM。 我觉得只要会「自动更...
对大部分使用k8s服务的人来说都会有一个探讨的问题是,到底DB是否适合上k8s,其实我个人是觉得不适...
今天来做按钮功能 一、创立UI按钮 二、撰写点击事件(方法) 接着搭配脚本,把脚本拉进去 publi...
在使用循环的过程中,有可能循环代码会包含很多内容,当某个条件达到时,我们可以判断不需要继续运行循环了...
Web 框架提供 API 让开发者读取设定档是基本的必备功能,以 Spring 框架为例,从最早只支...