Composer - зависимости и свой пут загрузки

Не относящиеся к фреймворку и программированию вопросы
Ответить
SergV
Сообщения: 192
Зарегистрирован: 2012.07.08, 11:27

Composer - зависимости и свой пут загрузки

Сообщение SergV »

Ребят, нужна помощь гуру по "компостеру", я ноль в нём, пытался прогуглить, но чего то не нахожу ответа.

Можно ли как то в composer.json прописать так, что бы загрузить не всю категорию с кучей субкатегорий и всеми файлами в них, а только конкретно нужный файл(ы), и в указанную категорию, скажем в vendor\lib\xxx\.
Просто хочу в проект добавить пару-другую классов из других фреймворков, но не весь комплект с туевой кучей вложенных категорий, а только выбранное и куда нужно, и не знаю как это в Composer сделать, и можно ли такое. Не хочется постоянно при обновлении вручную вытягивать нужные файлы, а компостер я знаю на уровне как скопировать команды из статей/описания... :)

ПС. Я знаю что всё авто подключается, и т.д., но меня не устраивает что потом в файлах нужно прописать длинные пути, даже если это один раз. Люблю лаконичность, что то типа так - vendor\lib\xxx\, а не так - vendor\ххх\ххх\ххх\ххх\ххх\ххх\ххх\ххх\ххх\. :)
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Composer - зависимости и свой пут загрузки

Сообщение zelenin »

SergV писал(а):Ребят, нужна помощь гуру по "компостеру"
коверкать название утилиты очень смешно
SergV писал(а):я ноль в нём, пытался прогуглить, но чего то не нахожу ответа.
вся документация композера на полчаса чтения
SergV писал(а):Я знаю что всё авто подключается, и т.д., но меня не устраивает что потом в файлах нужно прописать длинные пути
ась? для какой цели нужно прописывать длинные пути, если все авто подключается?
SergV
Сообщения: 192
Зарегистрирован: 2012.07.08, 11:27

Re: Composer - зависимости и свой пут загрузки

Сообщение SergV »

Нельзя.
Ясно, спасибо.

вся документация композера на полчаса чтения
Для знающих английский возможно на пол часа, а для меня на 3 дня, или 3 недели, что бы понять, я не профи программист, и английского не знаю. ИМХО!
ась? для какой цели нужно прописывать длинные пути, если все авто подключается?
К примеру к такой:

Код: Выделить всё

$request = new yii\web\Request();
$host_name = $request->serverName; 
Я так получаю в индексном файле имя хоста, что бы по нему подключить соответствующий файл конфигурации для активного хоста.
В контролерах к примеру есть такие подключения - "use yii\base\InvalidParamException;", мне что их делать в стиле - "vendor\ххх\ххх\ххх\ххх\ххх\ххх\ххх\ххх\ххх\"? Я пытаюсь в очередной раз собрать сайт на фреймворке, и оприраюсь на демо, и статьи, а там всякие namespace'ы и use, они довольно короткие, так как в Yii структура вложенности фреймворка довольно короткая, а в том же к примеру symfony что бы до нужного файла добраться, нужно под десяток категорий открыть. Вот это меня и убивает, хочется коротко и ясно.

Ладно всем спасибо, вопрос снят, раз нельзя напрямую в композере вытянуть, буду значить руками вытягивать, благо не каждый день...
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Composer - зависимости и свой пут загрузки

Сообщение zelenin »

SergV писал(а):К примеру к такой:

Код: Выделить всё

$request = new yii\web\Request();
$host_name = $request->serverName;
Я так получаю в индексном файле имя хоста, что бы по нему подключить соответствующий файл конфигурации для активного хоста.
В контролерах к примеру есть такие подключения - "use yii\base\InvalidParamException;", мне что их делать в стиле - "vendor\ххх\ххх\ххх\ххх\ххх\ххх\ххх\ххх\ххх\"?
выше вы указали пример подключения класса на основе его имени, дальше пишете про vendor\xxx\..., что является путем на файловой системе. что в итоге вы имеете в виду непонятно - имя класса и путь на файловой системе не пересекаются, и второе обычно не требуется.
SergV писал(а):Я пытаюсь в очередной раз собрать сайт на фреймворке, и оприраюсь на демо, и статьи, а там всякие namespace'ы и use, они довольно короткие, так как в Yii структура вложенности фреймворка довольно короткая, а в том же к примеру symfony что бы до нужного файла добраться, нужно под десяток категорий открыть
например? не помню, чтобы у симфони были длинные неймспейсы.
ну и иде сама вам помогает подставлять полные имена класса с импортом неймспейсов по первым буквам...
SergV
Сообщения: 192
Зарегистрирован: 2012.07.08, 11:27

Re: Composer - зависимости и свой пут загрузки

Сообщение SergV »

выше вы указали пример подключения класса на основе его имени, дальше пишете про vendor\xxx\..., что является путем на файловой системе. что в итоге вы имеете в виду непонятно - имя класса и путь на файловой системе не пересекаются, и второе обычно не требуется.
Я вообще обобщённо привёл пример, будь то класс или путь, длинная запись, что там, что там, длинная запись.
Второе, да не нужно, это я скопировал с другого файла, в рабочем уже напрямую использую - $request.
например? не помню, чтобы у симфони были длинные неймспейсы.
ну и иде сама вам помогает подставлять полные имена класса с импортом неймспейсов по первым буквам...
Я не знаю какие там нейспейсы по длине в симфони, но опираясь на такой путь - vendor\symfony\http-foundation\Symfony\Component\HttpFoundation, предполагал что что оно будет слишком длинно. Но как сейчас глянул в симфонстких уроках, там запись на одну категорию длинеей - "use Symfony\Component\HttpFoundation\Request;".
Что касается иде, то у меня стоит нетбеанс, но привыкнуть к нему не могу, а в нотепад++ этого нет. Но походу придётся на иде переходить.

В общем спасибо за разъяснения, как вижу, в принципе пофиг длина куда сливается, единственно мне не нужно сливать весь компонент скажем тот же симфониский с десятками файлов, если мне нужен один файл из них.
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Composer - зависимости и свой пут загрузки

Сообщение zelenin »

SergV писал(а):В общем спасибо за разъяснения, как вижу, в принципе пофиг длина куда сливается, единственно мне не нужно сливать весь компонент скажем тот же симфониский с десятками файлов, если мне нужен один файл из них.
композер нужен для облегчения управления зависимостями. вы же усложняете.
Ответить