ozgepoyraz / yii2-lyrics
歌词模块
Requires
- php: >=7.0
- yiisoft/yii2: ~2.0.13
Requires (Dev)
- phpunit/phpunit: 8.*.*
This package is not auto-updated.
Last update: 2024-09-26 05:08:58 UTC
README
Yii2 歌词模块
如何安装?
您可以通过以下composer命令在packagist上安装此模块到现有的yii项目:
composer require --prefer-dist ozgepoyraz/yii2-lyrics "dev-master"
之后,在advanced yii项目的backend/config/main.php文件的modules部分中添加以下模块:
'modules' => [
'lyrics' => [
'class' => 'ozgepoyraz\lyrics\Module',
],
],
之后,通过执行以下命令进行迁移操作以创建模块所需的表。(请在此项目目录中输入此命令。)
php yii migrate/up --migrationPath=@vendor/ozgepoyraz/yii2-lyrics/src/migrations
现在模块已成功安装。
您可以通过"domaininiz/backend/web/index.php?r=lyrics"地址访问模块页面。
关于模块
进入模块主页时,您将看到如下页面。
通过“管理音乐家”按钮,您可以在音乐家表上执行操作。
在音乐家页面上,您可以通过“创建音乐家”按钮在表单上输入姓名、年龄和国籍来添加新音乐家。此外,对于添加的每个数据,系统将自动填充创建时间。以下是一个示例音乐家表和创建页面;
之后,您可以通过"domaininiz/backend/web/index.php?r=lyrics"路由返回模块主页,或使用返回按钮,然后使用“管理歌词”按钮在歌词表上执行操作,或者直接通过"domaininiz/backend/web/index.php?r=lyrics/lyrics"路由直接访问此页面。当您想创建新的歌词时;
您必须将与您之前创建的一个艺术家关联起来。如果您不想与任何艺术家关联,则必须创建一个匿名艺术家来关联未知的歌词。之后,填写标题、内容和类型,以创建歌词。以下是一些已创建并与艺术家关联的歌词示例。
由于表是关联的,因此删除一个艺术家将同时删除与其关联的歌词。您还可以使用关联的艺术家名称行通过搜索模型过滤歌词。通常该列属于id,但通过调整搜索模型,已根据名称添加了搜索功能。
在主页的API部分,通过选择Random Lyrics或Random Musicians,http响应将返回一个随机歌曲或艺术家信息。我们可以通过向/lyrics/random/lyrics或/lyrics/random/musicians URL发送GET请求在浏览器中查看随机歌曲;
以json格式返回随机歌曲。同样,您也可以返回随机艺术家。如果表为空,则返回json错误代码。
我在模块中做的一些事情
-通过迁移创建了2个通过外键关联的表。
-使用这些表上的关系生成了模型。
-使用模型生成了CRUD。
-通过移除表中的id关系并使用helper在表单中通过名称属性进行替换。
-调整了GridView小部件,将id属性的值通过名称属性替换。
-这样,添加的元素可以通过界面手动选择,而无需手动输入id。
-通过调整搜索模型,我移除了id搜索并添加了基于关联特性的搜索。
-我创建了用于随机歌曲和艺术家的控制器,并返回了随机元素。
-使用Yii helper创建了一个主页。
-我尽量尝试使用我们所学的一切。在报告中,我可能没有提到所有内容。此外,我还想尝试使用Yii的REST API系统,但由于在url management部分遇到了问题,我创建了一个简单的HTTP API。