タグ付けされた質問 「magento-2.0」

Magento CE / EEバージョン2.0に関連する質問を示します

4
Magento2 CLIモジュール:有効にすると「Unkown module(s)」というエラーが表示される
Magento2では、シンプルなカスタムモジュールを作成し、CLIで有効にしたいと考えています。 bin/magento module:enable Vendorname_Modulename しかし、それは私に次のエラーを与えています: 不明なモジュール: 'Vendorname_Modulename' モジュールとそのファイルは app/code/Vendorname/Modulename/ もちろん、キャッシュをクリア/無効にし、生成をクリアし、Memcache(d)が実行されていません...


3
Magento2のIdentityInterfaceとは
Magento 2の多くのモデルが実装していることがわかりますMagento\Framework\DataObject\IdentityInterface。 このインターフェイスには、メソッドgetIdentities の実装が通常返される単一のメソッドがありますreturn [self::CACHE_TAG . '_' . $this->getId()];。 例はここにあります これは何のために使われますか?

1
magento 2でブロックを呼び出すときに、メンバー関数dispatch()を呼び出す致命的なエラー
これは私のブロックファイルです: <?php namespace ChennaiBox\Mymail\Block\Mail; class MailContent extends \Magento\Framework\View\Element\Template { protected $_objectManager; protected $customerSession; public function __construct( \Magento\Customer\Model\Session $customerSession, \Magento\Framework\ObjectManagerInterface $objectManager ) { $this->customerSession = $customerSession; $this->_objectManager = $objectManager; } public function mymailData() { try{ if ($this->customerSession->isLoggedIn()) { $cutomerEmail =(string)$this->customerSession->getCustomer()->getEmail(); echo $cutomerEmail; else{ $this->_redirect('customer/account/login/'); } }catch (Exception $e) { $e->getMessage(); } …

3
UIコンポーネントを使用してフォームフィールドの下にメモを追加する
UIコンポーネントを使用してMagento 2のフィールドの下に小さなテキストを追加するにはどうすればよいですか。 使用してMagento\Framework\Data\Form私はこれを行うことができます: /** @var \Magento\Framework\Data\Form $form */ $form = $this->formFactory->create(); $fieldset = $form->addFieldset( 'base_fieldset', [ 'legend' => __('Some legend here'), 'class' => 'fieldset-wide' ] ); $fieldset->addField( 'name', 'text', [ 'name' => 'name', 'label' => __('Name'), 'title' => __('Name'), 'note' => __('Some note here') ] ); 上記のコードはこれを生成します(フィールドの下のテキストに注意してください)。 フォームUIコンポーネントを使用して同じことを達成するにはどうすればよいですか? 私はこのように定義されたフォームを持っています: <field …




5
VCSでのMagento 2プロジェクトの推奨構造は何ですか?
新しいM2プロジェクトを開始するとき、最初に行うことは、composerを使用してコアをインストールすることです。 composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition これで、カスタムモジュールとテーマをで作成できますapp/code。次に、VCSにフォルダーcomposer.*全体を追加しapp/codeます。これまでのところ、すべてが正常です。 ここで、プロジェクトにいくつかのビルドツールを使用したいとします。GruntまたはGulpとしましょう。 自分でコミットGruntfile.jsすると、リポジトリを複製した後にmagento/magento2-base実行すると、パッケージによって上書きされますcomposer install。 私は私をコミットした場合gulpfile.js、私は本当に私の中で依存関係を定義することはできませんpackage.json、それはまたによって上書きされるため、magento/magento2-base。 MagentoのGruntセットアップを使用し、/dev/tools/grunt(たとえばthemes.js)の下のファイルを編集してカスタマイズしたい場合、変更がによって上書きされるため、できませんmagento/magento2-base。 私の理解では、ドキュメントルートではそれほど多くのことはできないということです。もちろん、この問題には多くの解決策があります。 git checkout -インストール直後に実行して自分のファイルをリセットできました /buildたとえば、ビルドファイルを専用フォルダーに保存できます。 Phing、Ant、Rakeなどの別のビルドツールを使用できます(ただし、フロントエンドの開発者はそれほど満足しません) magento/magento2-baseコアファイルのカスタムマッピングを持つカスタムパッケージに置き換えることができます(実際には最適ではありませんが、オプションです) 私は個人的にこれらのオプションをすべて嫌うので、私がやろうとしていることを達成するための好ましいまたはより良い方法があるかどうか知りたいです。 誰も同じ問題を抱えていますか?どのように解決しましたか?VCSでプロジェクトをどのように構成しますか? 更新 プロジェクトのセットアップに関連する追加のポイント。私の実験では、Magento composerインストーラーがファイルオーバーライドのフラグを持っていることに気付きました。 "extra": { "magento-force": "override" } 間違っていない場合は内部的にブール値として扱われるため、falseオーバーライドをスキップするように設定しようとしました。composer installファイルが既に存在するため、インストールを実行すると失敗します。基本的に、Magentoにファイルを上書きさせない場合、インストールできません。 このフラグの目的は何ですか?私のためにチェックを実行することだけを想定していますか?正直に言うとあまり意味がありませんが、誰かが主題に光を当てることができるかもしれません。



1
Magento 2の新しいグリッドシステムテンプレート
私は、Merchant beta 1.0.0バージョンでMagentoの新しいバックエンドグリッドシステムをいじくり回しています。 まず第一に、私は感銘を受けたと言わなければなりません。 表示する列を選択したり、並べ替えたり、必ずしも列を持たない属性でフィルタリングしたりできるようになりました。 しかし、それは重要ではありません。 グリッドのレンダリング方法がわかりません。 テンプレートパスヒントを有効にすると、たとえば製品グリッドがテンプレートapp/code/Magento/Ui/view/base/ui_component/templates/listing/default.xhtmlとブロックを介してレンダリングされることがわかりましたMagento\Ui\Component\Listing。 テンプレートを編集して、理解できないものを見ました。 <!-- ko template: getTemplate() --><!-- /ko --> この行を削除した場合(有効になっている場合はキャッシュをクリアした場合)、グリッドはもう表示されません。 誰かがこれkoが何であり、どのように機能するかを説明できますか? 他のテンプレートにもこの種のマークアップがあります。 app/code/Magento/Ui/view/base/web/templates/grid/controls/columns.html例えば。 [更新] http://knockoutjs.com/ をko参照する簡単な検索(duh!)で見つけましたが、まだ説明が必要です。

3
Magento 2:サービス契約を使用する利点は何ですか?
ご存じかもしれませんが、Magento 2が推奨するCRUDアクションのモデル/コレクションの処理方法は、サービスコントラクトを使用することです。 しかし、Magento SE Q&Aによると、ほとんどの人は代わりにモデル/リソースモデル/コレクションを直接使用する傾向があるようです。 見積もりを読み込む例として、次のようにファクトリを介して直接行うことができます。 $this->quoteFactory->create()->load($quoteId); の$this->quoteFactoryインスタンスはどこですか\Magento\Quote\Model\QuoteFactory しかし、私はこのようなサービス契約を介してそれを行うこともできます: $this->quoteRepository->get($quoteId); の$this->quoteRepositoryインスタンスはどこですか\Magento\Quote\Api\CartRepositoryInterface だから私の質問は、工場よりもサービス契約を使用する利点は何ですか?

3
Magento 2:製品のURLを書き換える
カスタムモジュールrewrite product urlから取得しようとしていload productます。http://localhost/m2/catalog/product/view/id/1401/category/23/形式でurlを取得しています。 でも私はしたい http://localhost/m2/juno-jacket.html ここにコードがあります コンストラクター内 public function __construct( \Magento\Catalog\Helper\Product $catalogProductHelper, ) { $this->catalogProductHelper = $catalogProductHelper; } カスタム機能 public function abc(){ $product_id = '123'; return $this->catalogProductHelper->getProductUrl($product_id); } abc() method のようなURLを返します http://localhost/m2/catalog/product/view/id/1401/category/23/

6
Magento 2の再インデックスは、そのようなエンティティを返しません
カタログをMagento 1.9.2.3からMagento 2.0.2に正常に移行しました。移行後、コマンドを使用してインデックスの再作成を行いましたphp bin/magento indexer:reindex。 インデックスcatalog_category_productとを除き、すべてが正常に再インデックス付けされ、シェルcatalog_product_categoryで返さNo such entity.れReindex Required、admin で通知されます。チェックしましたvar/log/が、エラーはありません。 その結果、製品はバックエンドのカテゴリに追加されますが、フロントエンドではカテゴリが空で表示されます。 この問題の原因は何ですか?どうすればデバッグできますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.