使用Yii 2和PHP进入Web应用程序开发的第52页

Adr*_*ian 4 php composer-php yii2

你到了第52页,我正试图查看客户/添加路线.

我设法通过创建一个软链接修复它 - 但我为什么需要这是正确的方法来解决它或该书与yii代码库不同步

我检查了勘误并应用了建议的修复(以及示例下载书代码中的内容)

我知道书籍已经过时了 - 但这是我得到的错误

PHP User Error – yii\base\ErrorException

Exception 'yii\base\InvalidParamException' with message 'The file or directory to be published does not exist: /var/www/html/crmapp/vendor/bower/jquery/dist' 

in /var/www/html/crmapp/vendor/yiisoft/yii2/web/AssetManager.php:385
...
Run Code Online (Sandbox Code Playgroud)

现在bower目录不在我的机器上,即使我按照所有的作曲家指令安装到目前为止我的东西

[adrian@eagle:/var/www/html/crmapp]$ ls vendor/bower-asset/jquery/dist/
jquery.js  jquery.min.js  jquery.min.map
[adrian@eagle:/var/www/html/crmapp]$
Run Code Online (Sandbox Code Playgroud)

好的,我设法通过创建软链接来修复它

[adrian@eagle:/var/www/html/crmapp]$ ls -l vendor/
total 64
-rw-rw-r-- 1 adrian adrian  183 Jan  6 21:19 autoload.php
drwxrwxr-x 2 adrian adrian 4096 Jan  6 21:19 bin
lrwxrwxrwx 1 adrian adrian   12 Jan 12 19:28 bower -> bower-asset/
drwxrwxr-x 6 adrian adrian 4096 Jan  6 21:19 bower-asset
drwxrwxr-x 3 adrian adrian 4096 Jan  6 21:19 cebe
Run Code Online (Sandbox Code Playgroud)

书:https: //www.packtpub.com/web-development/web-application-development-yii-2-and-php

aro*_*hev 6

该文件夹应该有名称bower而不是bower-asset.重命名是自动管理的.

你有没有遵循安装说明

我认为问题是您在安装/更新编写器包之前没有执行此命令:

composer global require "fxp/composer-asset-plugin:~1.0.3"
Run Code Online (Sandbox Code Playgroud)

它应该只运行一次,然后再运行composer update一次.

您可以在官方Github页面上找到有关此插件的更多信息.

更新:

经过更详细的调查后,我发现他正在尝试从头开始构建没有模板的应用程序.

composer.json是最新的框架最后的变化.缺少这些设置:

"minimum-stability": "dev",
"extra": {
    "asset-installer-paths": {
        "npm-asset-library": "vendor/npm",
        "bower-asset-library": "vendor/bower"
    }
}
Run Code Online (Sandbox Code Playgroud)

正如阿德里安所说,本书中没有提到这些细节.

composer.json这里提供了每个模板的最新文件: