在 laravel 之外使用 ORM 找不到我的测试模型“用户”[关闭]
Posted
技术标签:
【中文标题】在 laravel 之外使用 ORM 找不到我的测试模型“用户”[关闭]【英文标题】:Using ORM outside of laravel cannot find my test model "User" [closed] 【发布时间】:2015-06-07 15:01:02 【问题描述】:我正在尝试在没有 Laravel 的小项目中使用 Eloquent 组件。但总是向我抛出错误“致命错误:第 7 行的 C:\inetpub\wwwroot\AutoDev\index.php 中找不到类 'AutoDev\Models\User'”。
这里是这个测试项目的结构:
-AutoDev(root) [
index.php,
init.php,
composer.json
app [
models [
User.php
]
]
vendor [
all the staff
]
这里是代码代码:
Index.php
<?php
require 'init.php';
use AutoDev\Models\Users as Users;
$users = Users::all();
var_dump($users);
init.php
<?php
require_once 'vendor/autoload.php';
use Illuminate\Database\Capsule\Manager as Capsule;
$capsule = new Capsule;
$capsule->addConnection([
'driver' =>'mysql',
'host' => 'autodev',
'database' => 'database',
'username' => 'root',
'password' => 'db0305',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
]);
$capsule->setAsGlobal();
$capsule->bootEloquent();
compser.json
"require":
"illuminate/database": "*"
,
"autoload":
"psr-4":
"AutoDev\\": "app/"
autoload-ps4.php
<?php
// autoload_psr4.php @generated by Composer
$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);
return [
'Symfony\\Component\\Translation\\' => array($vendorDir . '/symfony/translation'),
'Stringy\\' => array($vendorDir . '/danielstjules/stringy/src'),
'Illuminate\\Support\\' => array($vendorDir . '/illuminate/support'),
'Illuminate\\Database\\' => array($vendorDir . '/illuminate/database'),
'Illuminate\\Contracts\\' => array($vendorDir . '/illuminate/contracts'),
'Illuminate\\Container\\' => array($vendorDir . '/illuminate/container'),
'AutoDev\\' => array($baseDir . '/app'),
];
User.php
<?php
namespace AutoDev\Models;
use Illuminate\Database\Eloquent\Model as Eloquent;
class Users extends Eloquent
protected $table = "users";
protected $guarded = "*";
protected $primaryKey = 'u_id';
protected $fillable = [
'u_user',
'u_pass',
'u_matrix',
'u_sponsor',
'u_activate',
'u_state'
];
嗯,这个测试项目应该是这样工作的(我和互联网上的其他例子一样)但是没有。
缺少什么?我无法修复它。
【问题讨论】:
如果您将代码文本粘贴到问题中而不是屏幕截图中,您可能会得到更好的响应。 好吧,我认为截图是阅读代码的最佳方式。这就是我得到的所有代码。 如果有人想尝试复制您的问题,并且您提供了屏幕截图,他们将不得不重新输入您的代码。他们不太可能打扰。如果您复制并粘贴文本,您更有可能得到答案。 啊,好的,我明白了,谢谢兄弟。 没有人知道我的代码是怎么回事? 【参考方案1】:我修好了。文件 User.php,它不是一个 php 文件,只是“用户”,没有扩展名......
【讨论】:
以上是关于在 laravel 之外使用 ORM 找不到我的测试模型“用户”[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
laravel 5.1 表示除了 ('/') 之外的所有其他路由,使用 ec2 在在线亚马逊服务器上找不到 404 页面
无法在我的 Laravel 项目中使用 fork 存储库 - “找不到匹配的包版本”