ฉันทำงานเกี่ยวกับการสร้างโมดูลที่กำหนดเองใน magento 2 แต่มันไม่ทำงาน คุณช่วยแนะนำฉันในที่ที่ฉันผิดไปได้ไหม.
รหัสโมดูลของฉัน:
app / etc / config.php:
'modules' =>
array (
'Ramesh_Sample' => 1,
),
app / รหัส / Ramesh / ตัวอย่าง / etc / module.xml
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
<module name="Ramesh_Sample" schema_version="2.0.0">
</module>
</config>
app / รหัส / Ramesh / ตัวอย่าง / etc / ส่วนหน้า / routes.xml
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/App/etc/routes.xsd">
<router id="standard">
<route id="sample" frontName="sample">
<module name="Ramesh_Sample" />
</route>
</router>
</config>
app / รหัส / Ramesh / ตัวอย่าง / ควบคุม / ดัชนี / index.php
<?php
namespace Ramesh\Sample\Controller\Index;
use Magento\Framework\App\Action\Context;
//use \Magento\Framework\View\Result\PageFactory;
class Index extends \Magento\Framework\App\Action\Action
{
private $_resultPageFactory;
public function __construct(
Context $context,
\Magento\Framework\View\Result\PageFactory $resultPageFactory
)
{
parent::__construct($context);
$this->_resultPageFactory = $resultPageFactory;
}
public function execute()
{
$result = $this->_resultPageFactory->create();
return $result;
}
}
app / รหัส / Ramesh / ตัวอย่าง / บล็อก / sample.php
namespace Magento\Sample\Block;
class Sample extends \Magento\Framework\View\Element\Template
{
}
app / รหัส / Ramesh / ตัวอย่าง / views / ส่วนหน้า / รูปแบบ / sample_index_index.xml
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
<head>
<title>Hello World</title>
</head>
<body>
<referenceContainer name="content">
<block class="Sample\Ramesh\Block\Sample" name="sample" template="sample.phtml">
</block>
</referenceContainer>
</body>
</page>
app / รหัส / Ramesh / ตัวอย่าง / view / ส่วนหน้า / แม่ / sample.phtml
<?php echo 'Hi I am Magento 2'; ?>
แต่ฉันได้รับข้อผิดพลาดต่อไปนี้:
a: 4: {i: 0; s: 380: "ข้อผิดพลาดที่กู้คืนได้: อาร์กิวเมนต์ 2 ผ่านไปยัง Ramesh \ Sample \ Controller \ ดัชนี \ ดัชนี :: __ สร้าง () ต้องเป็นตัวอย่างของ Magento \ Framework \ View \ Result \ PageFactory, ไม่มีใครได้รับเรียกใน var / generation / Ramesh / ตัวอย่าง / คอนโทรลเลอร์ / ดัชนี / ดัชนี / Interceptor.php ในบรรทัดที่ 14 และกำหนดไว้ในแอพ / รหัส / Ramesh / ตัวอย่าง / ตัวควบคุม / ดัชนี / Index.php ในบรรทัดที่ 14 "; i: 1; s: 6109: "# 0 แอป / รหัส / Ramesh / ตัวอย่าง / ตัวควบคุม / ดัชนี / Index.php (14): Magento \ Framework \ App \ ErrorHandler-> ตัวจัดการ (4096, 'อาร์กิวเมนต์ 2 ผ่าน ... ', '/ var / www / html / m ... ', 14, Array)