在 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 页面

安装 nginx 后找不到 Laravel 路由

为啥我的 Laravel 模块中出现“找不到类”错误?

无法在我的 Laravel 项目中使用 fork 存储库 - “找不到匹配的包版本”

我的 Jquery 文件在 laravel 中找不到控制器 [关闭]

在 Laravel 5 单元测试中找不到特征