当我尝试运行php artisanqueue:work命令时,出现此错误:
[Symfony\Component\Debug\Exception\FatalErrorException]
Call to a member function beginTransaction() on null
Run Code Online (Sandbox Code Playgroud)
我已经检查了互联网上几乎所有有关此错误的可用帮助,但没有得到任何解决方案。
我不确定这是否与我正在使用的这个包有关。
https://github.com/jenssegers/laravel-mongodb
Run Code Online (Sandbox Code Playgroud)
我猜可能是因为其他人也遇到了这个错误,但不幸的是没有任何回复。
https://github.com/jenssegers/laravel-mongodb/issues/964
Run Code Online (Sandbox Code Playgroud)
日志中的详细错误:
[2016-11-12 20:18:45] local.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Call to a member function beginTransaction() on null' in C:\wamp\www\blog\vendor\laravel\framework\src\Illuminate\Database\Connection.php:611
Stack trace:
#0 {main}
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激。
提前致谢。
谢谢,
帕斯沃拉
我从Mongodb地图集开始,我试图将我的laravel/jenssegers项目连接到集群我配置我的conf /数据库
'mongodb' => [
'driver' => 'mongodb',
'host' => env('DB_HOST'),
'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
]
],
Run Code Online (Sandbox Code Playgroud)
还有我的.env文件
DB_HOST="xxxx-shard-00-00-uggj0.mongodb.net"
DB_PORT=27017
DB_DATABASE=xxx
DB_USERNAME=xxx
DB_PASSWORD=xxx
Run Code Online (Sandbox Code Playgroud)
我得到这个错误
找不到合适的服务器(
serverSelectionTryOnce设置):[连接已关闭,在'xxxx-shard-00-00-uggj0.mongodb.net:27017'上调用ismaster
我没有问题就与Mongodb Compass冷漠相处.
我的Atlas Ip白名单是开放的(0.0.0.0/0).
我错过了什么吗?
您好,我在我的项目中使用laravel,mongoDB和AdminLTE模板。对于mongoDB我正在使用jenssegers/laravel-mongodb。但是现在我在laravel控制器中创建登录身份验证时遇到错误,这是我在AuthController.php中的代码
public function postLogin(Request $request)
{
$authUser = User::where('email', '=', $request->email)->first();
if (isset($authUser)) {
if (Auth::attempt(['email' => $request->email, 'password' => $request->password])) {
echo "success";exit;
} else {
echo "fail";exit;
}
} else {
echo "fail";exit;
}
Run Code Online (Sandbox Code Playgroud)
在User.php代码中
<?php
namespace App;
use Jenssegers\Mongodb\Eloquent\Model as Eloquent;
use DB;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Auth\Authenticable as AuthenticableTrait;
class User extends Eloquent implements Authenticatable
{
protected $connection = 'mongodb';
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable …Run Code Online (Sandbox Code Playgroud) 全新安装 laravel 7 项目后,
C:\xampp\htdocs\blog>composer require jenssegers/mongodb --ignore-platform-reqs
Run Code Online (Sandbox Code Playgroud)
但这给出了一个错误。
您的要求无法解析为一组可安装的软件包。
Problem 1
- jenssegers/mongodb[v3.8.0, ..., v3.8.2] require illuminate/support ^8.0 -> found illuminate/support[v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require.
- Root composer.json requires jenssegers/mongodb ^3.8 -> satisfiable by jenssegers/mongodb[v3.8.0, v3.8.1, v3.8.2].
Run Code Online (Sandbox Code Playgroud)
还卸载了旧的作曲家并安装了它的最新版本。但还是同样的问题
我想弄明白,如何删除集合中的所有元素或删除集合?我正在使用Laravel 4.2和"jenssegers/mongodb":"~2.0".
你能帮我解决这个问题吗?谢谢!