ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:19.59KB ,
资源ID:9916383      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-9916383.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Magento添加CLI命令.docx)为本站会员(b****0)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

Magento添加CLI命令.docx

1、Magento添加CLI命令添加CLI命令您的模块可以选择使用Magento 2的基于Symfony的命令行界面(CLI)为用户提供与之交互的命令。1.命令命名指南1.1. 命名指南概述Magento 2引入了新的命令行界面(CLI),使组件开发人员可以插入模块提供的命令。作为扩展开发人员,您现在可以为Magento应用程序创建和分发自己的命令。但是对于任何实现,遵循一些常规约定以使您的命令与其他开发人员的命令保持一致也很重要。以这种方式保持一致会减少用户的学习曲线。本主题讨论我们推荐的命名约定。1.2. 命令名命令名称是命令的一部分,它在非常高的级别上定义命令的行为。在命令中,它紧随命令名称

2、之后。例如,在bin/magento setup:upgrade中,bin/magento是命令的名称,而setup:upgrade是命令的名称。如果您方便使用Magento安装,请输入以下内容以显示当前命令列表:$bin/magento list格式:group:subject:actiongroupgroup代表一组相关命令。组中的命令显示在列表中,从而使用户更容易找到所需的命令。要查找命令的组名,请想象可以使用该命令的主题区域。主题区域可以是以下任意一个:Domain区域(例如,module用于带模块的操作,info用于提供某些信息的命令)Workflow区域(例如,admin对于管理员

3、可以使用的命令,dev对于开发人员使用的命令)subjectsubject是行动的主题。该主题是可选的,但对于定义可用于同一对象的命令集很有用。如果主题由复合词表示,请使用破折号或连字符将这些词分开。actionaction是命令执行的操作。例子/ general commands: just a group and an actionbin/magento setup:installbin/magento module:status/ set of commands with a subjectbin/magento setup:config:setbin/magento setup:con

4、fig:deletebin/magento setup:db-schema:upgradebin/magento setup:db-data:upgradedb-schema和db-data是复合词的示例。1.3. 命令选项和参数选项和参数跟随命令名称并修改命令的行为。例如,在bin/magento module:disable -force Magento_Catalog中,-force选项和Magento_Catalog参数绕过限制并指定要禁用的特定模块;在这种情况下,无论对其他模块的依赖性如何。选项和参数创建不同的用户体验。作为开发人员,您可以选择哪种输入类型更适合您的特定情况。1.3.

5、1. 命令参数参数是用户以指定顺序传递的值。参数名称对用户不可见。格式:单个单词或复合单词,用破折号或连字符分隔例:$bin/magento dev:theme:create frontend vendor themenamewhere:frontend是主题领域的论点vendor是供应商的论点themename是主题名称参数当需要用户提供所需数据时,请使用参数。我们建议尽可能少的参数(不超过三个),这样用户就不会混淆其顺序。为了使用户更简单,我们建议以下操作:多次运行CLI以提供多个相似的值,而不是一次使用20个值运行一次如有可能,请为必需的参数使用默认值。然后,您可以使用选项而不是参数来最

6、小化用户必须输入的所需数据量。用选项替换参数:为选项命名,这样用户可以以任何顺序提供它们。这需要额外的数据验证(默认情况下,所有选项都是可选的)。1.3.2. 命令选项选项是名称-值对。输入值的顺序无关紧要。一个选项可以有值或没有值。不需要值的选项表示标志(yes或no)。一个选项也可以使用一个字母的快捷方式来代替其全名。启用常用选项的快捷方式,或者确定快捷方式的含义是否容易。通常,启用类似于广泛使用的命令中的选项的快捷方式是有意义的(例如,-f表示force, -v表示verbose, -h表示help)。格式:单个单词或复合单词,用破折号或连字符分隔。例如,$bin/magento dev

7、:theme:create -parent=Magento/luma frontend arg1 arg2$bin/magento dev:theme:create -p=Magento/luma frontend vendor themename$bin/magento dev:theme:create -extend-from=Magento/luma frontend vendor themename$bin/magento module:disable -f Magento_CmsWhere:-parent是一个指定父主题的选项-p是-parent的快捷方式-f是非值选项-force的

8、快捷方式arg1,arg2,frontend,vendor和themename是参数(见命令选项和参数)。使用以下选项:Optional dataRequired data that has a default value例:/ correctbin/magento dev:theme:create -extend-from=Magento/luma frontend Foo barbin/magento module:disable -force Magento_Catalogbin/magento module:disable -f Magento_Catalog/incorrectbin

9、/magento module:disable -force=1 Magento_Catalogbin/magento module:disable -f=yes Magento_Catalog1.4. 避免命名冲突的建议为避免将您的命令命名为与另一个命令相同,我们建议: 在为命令选择名称之前,请先查看Magento市场中的其他扩展。通过提前计划,您可以完全避免命名冲突。限制命令名称以唯一名称(例如供应商名称)开头。该命令的可用性取决于您为供应商名称选择的内容。例如,myname:dev:theme:create它并不明显,很难记住。供应商名称不必以命令名称开头;它可能在中间。这样,相关的命令

10、被组合在一起。例子:dev:myname:theme:createdev:myname:theme:delete2.如何添加CLI命令2.1. 添加CLI命令概述Magento使您的组件可以向类似于Symfony的命令行界面(CLI)添加命令。2.1.1. 关于Magento CLIMagento具有一个命令行界面,可以执行安装和配置任务:/bin/magento。新界面执行多项任务,包括:安装Magento(以及相关任务,例如创建或更新数据库架构,创建部署配置,等等)。清除缓存。管理索引,包括重新索引。创建翻译词典和翻译包。为插件生成不存在的类(例如工厂和拦截器),从而为对象管理器生成依赖项

11、注入配置。部署静态视图文件。从Less创建CSS。其他福利:单个命令(/bin/magento list)列出了所有可用的安装和配置命令。基于Symfony的一致的用户界面。CLI是可扩展的,因此第三方开发人员可以“插入”它。这具有消除用户学习曲线的额外好处。不显示禁用模块的命令。2.1.2. 先决条件在开始之前,请确保您了解以下内容:所有Magento命令行界面(CLI)命令都依赖于Magento应用程序,并且必须有权访问其上下文,依赖项注入,插件等。所有CLI命令都应在模块范围内实施,并应取决于模块的状态。您的命令可以使用对象管理器和Magento依赖项注入功能;例如,它可以使用构造函数依

12、赖注入。您的命令应具有一个唯一的name,在configure()Command类的方法中定义:12345678protected function configure() $this-setName(my:first:command); $this-setDescription(This is my first console command.); parent:configure();.或在di.xml文件中:12345678910 . my:first:command .或在_construct方法中(声明与相似di.xml):1234public function _construct

13、() parent:_construct(my:first:command);否则,Symfony框架将返回The command defined in cannot have an empty name.错误。2.2. 使用依赖项注入添加CLI命令Magento 2示例模块提供了许多编程技术的演示,包括使用依赖项注入添加CLI命令。看sample-module-command一个例子。该模块的README.md讨论了如何安装它。以下是该过程的摘要:1. 创建一个Command类(建议位置为/Console/Command)。参见/Console/Command/StoreListComman

14、d.php例如。123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051setName(my:first:command); $this-setDescription(This is my first console command.); $this-addOption( self:NAME, null, InputOption:VALUE_REQUIRED, Name ); parent:configure(); /* * Execute the command

15、* * param InputInterface $input * param OutputInterface $output * * return null|int */ protected function execute(InputInterface $input, OutputInterface $output) if ($name = $input-getOption(self:NAME) $output-writeln(Provided name is . $name . ); $output-writeln(Success Message.); $output-writeln(A

16、n error encountered.); $output-writeln(Some Comment.); 使用,或标签设置输出文本的样式。有关样式的更多信息,请参见Symfony文档。2. 在MagentoFrameworkConsoleCommandListInterface声明您的Command类,并使用依赖项注入配置命令名称(/etc/di.xml):1234567891011 . MagentoCommandExampleConsoleCommandSomeCommand .3. 清理缓存:$bin/magento cache:clean4. 重新生成代码:$bin/magento setup:di:compile2.2.1. 结果结果,可以使用my:first:command接受-name参数的新命令。$bin/magento my:first:command -name John

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2