php - как использовать пакет, установленный через composer - PullRequest
0 голосов
/ 15 мая 2019

Я установил FactoryMuffin через композитор. После установки я запустил composer dump-autload только для того, чтобы убедиться, что я использую последние версии.

Теперь, когда я пытаюсь использовать в своем коде что-то из пакета, который я установил, я не могу. Например:

use League\FactoryMuffin\Facade;

class APITest extends Sw_Test_PHPUnit_LibraryTestCase
{

    public function setUp()
    {
        $a = new FactoryMuffin();

        parent::setUp();
    }
}

Когда я наводю указатель мыши на новый экземпляр объекта FactoryMuffin, он говорит, что не может найти его объявление.

Если я наведусь на Фасад в:

use League\FactoryMuffin\Facade;

это говорит

Неопределенный класс Фасад

и при наведении курсора:

use League\FactoryMuffin

сказано

несколько реализаций

Я выполняю все шаги, перечисленные в документации к FactoryMuffin, что мне не хватает?

Вот мой файл композитора:

{
    "name": "project/project",
    "description": "Main Project Library",
    "homepage": "http://www.testproject.com/",
    "require": {
        "php": ">=5.4",
        "zendframework/zendframework": "2.3.9",
        "guzzle/guzzle": "~3.7",
        "justinrainbow/json-schema": "~1.3",
        "mikey179/vfsStream": "v1.2.0",
        "mtdowling/cron-expression": "1.0.*",
        "minfraud/http": ">=1.60,<2.0",
        "davegardnerisme/nsqphp": "dev-master",
        "myclabs/deep-copy": "1.3.0",
        "maennchen/zipstream-php": "0.3.*",
        "corneltek/getoptionkit": "~2",
        "firebase/php-jwt": "~3.0",
        "symfony/property-access": "~3.0",
        "punic/punic": "2.1.*",
        "guzzlehttp/guzzle": "^6.3",
        "easypost/easypost-php": "^3.4",
        "textalk/websocket": "^1.2",
        "robmorgan/phinx": "^0.10.6",
        "fzaninotto/faker": "^1.8",
        "league/factory-muffin": "^3.0",
        "league/factory-muffin-faker": "^2.1"
    },

    "require-dev": {
        "phpunit/phpunit": "5.6.*",
        "mockery/mockery": "dev-master"
    },

    "repositories": [],
    "autoload": {
        "psr-0": {
            "DeepCopy": "vendor/myclabs/deep-copy/src"
        }
    }
}

1 Ответ

0 голосов
/ 15 мая 2019

https://factory -muffin.thephpleague.com / Использование / Примеры /

Попробуйте использовать как

use League\FactoryMuffin\Facade as FactoryMuffin;

FactoryMuffin::define('Message', array(
    'user_id'      => 'factory|User',
    'subject'      => 'sentence',
    'message'      => 'text',
    'phone_number' => 'randomNumber|8',
    'created'      => 'date|Ymd h:s',
    'slug'         => 'call|makeSlug|word',
), function ($object, $saved) {
    // we're taking advantage of the callback functionality here
    $object->message .= '!';
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...