問題タブ [shopware]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
203 参照

javascript - ショップウェア 4.2.3 で HTMl 要素を編集しているときに、js エラーが発生し、編集できません

ショップウェア 4.2.3 で HTML 要素を編集すると、JavaScript エラーが発生し、編集できません。

スクリーンショットを確認してくださいスクリーンショット

スクリーンショットの外部 URL

エラー

キャッチされていない TypeError: 未定義の ext-all.js?201404291539:21 のプロパティ 'substring' を読み取れません

0 投票する
1 に答える
84 参照

php - データベースのアラインメント (?) による Php SQL 構文エラー!

私が盲目である場合は申し訳ありませんが、これは意味がありません. 複数のSQLソリューションを使用した以外に、構文でまだエラーが発生しています...

ここに私のphpコード:

私のエラーメッセージ:

0 投票する
2 に答える
1107 参照

plugins - フロントエンドとバックエンドの両方の機能を提供する Shopware プラグインを実装するには?

フロントエンドとバックエンド インターフェイスにいくつかの変更を提供する Shopware プラグインを実装したいと考えています。それは可能ですか、それとも 2 つの別々のプラグインを実装する必要がありますか? 別々のプラグインの場合、両方のプラグインが一緒にインストールおよび更新されていることを確認するにはどうすればよいですか?

0 投票する
2 に答える
1217 参照

php - TreeStore.sync() がデータベースに書き込まれないのはなぜですか?

私は、Shopware プラグインを拡張して変更するタスクを割り当てられました。原作者はもう会社にいません。それ以前は、Shopware と ExtJ を扱ったことはありません。だから私はここ数日、自分自身をそれに慣れさせるのに費やしており、これまでのところ原則とパラダイムを理解したと思います.

私が現在問題を抱えている唯一のことは、次の問題です。

Ext.tree.PanelAjax を使用してデータベースに保存したいものがあります。ノードがツリーに追加され、GUI に表示されます。しかし、呼び出した後optionsTree.getStore().sync()、データベースには何も到着しません。PHPコントローラーのcreateProductOptionAction()は呼び出されませんが、理由がわかりません。ブラウザ コンソール ログにエラー メッセージはなく、Shopware ログ ファイルにもエラー メッセージはありません。何もない。すべてがうまくいくようです。しかし、データは保存されていません。

元のプラグインには、Ext.grid.Panelデータを保存および表示するための がありました。そして、これはうまくいきます。しかしExt.tree.Panel、コードを変更して修正すると、もう機能しません。私の観点からは、それはうまくいくはずです。しかし、そうではなく、自分の間違いを見ることができません。

私はまだ ExtJ の血まみれの初心者です。:)

これが私がこれまでに得たものです:

app.js

コントローラー/controller.js

ビュー/window.js

store/product_options_list.js

model/product_option.js

php/controller.php

編集1

サキさんの提案通り、ショップとモデルの両方にライターを追加してみました。しかし、残念ながらまだうまくいきません。createProductOptionAction()PHP コントローラーの が呼び出されることはありません。

私が不思議に思っているのは、元のプラグインにはライターが実装されていなかったということです。しかし、エントリを追加すると、すぐにデータベースに表示されました。

編集2

にいくつかのリスナーを追加しましたstore.ProductOptionsList

これらのイベントはすべて発生しています。beforesyncイベントショー

それでも、 の API リクエストはmodel.ProductOption起動されません。それはうまくいくはずです。そうじゃない?これは ExtJS 4.1 のバグでしょうか? または、Shopware + ExtJS で何か?

編集3

わかりました、これは本当に奇妙になっています。

に「書き込み」リスナーを追加しましたTreeStore

ノードを追加して を呼び出した.getStore().sync()後、writeイベントが発生し、彼は を繰り返しoperation.records、1 つのレコード (追加したばかりのレコード) を見つけます... しかし、ツリーに追加する前に行ったdirtyにもかかわらず、そうではありませんか?!productOption.setDirty()

お時間をありがとうございました!:)

0 投票する
1 に答える
176 参照

mysql - UPDATE 行 ON UPDATE トリガー、複数テーブル条件

私は Shopware で作業していますが、1 つの奇妙なことに頭がおかしくなりそうです :( まず、問題が何であるかを説明します。

通常品以外にも、シャツのサイズ違いなど、複数のバリエーションがあるものもあります。XS、S、M、L、および/または異なる色の同じ商品ですが、注文番号が異なり、おそらく価格も異なります。

したがって、Shopware には、コア記事データを含むテーブル、詳細データを含むテーブル、および可能な価格データを含むテーブルがあります。

複数のバリエーションを持つ記事には、記事テーブルに設定された configurator_set_id フィールドと main_detail_id フィールドがあります。私の問題は、それらのバリアント記事がたくさんあるショップがあり、ショップのロジックを構築した人は誰でも...おそらく酔っていたということです。バリアント記事のメイン記事が非アクティブ (在庫切れ、非アクティブ化など) の場合、バリアント記事全体が購入できなくなります... 次のバリアントへのフォールバックはありません。まだショップにありますが、それはできません。何でも。

バリアントのステータスが変化した場合は記事を更新するだけです...しかし、それが私の問題の本当の始まりです。最初のテーブル構造は次のとおりです。

s_articles:

s_articles_details:

s_articles_prices

記事を作成するために、Shopware は基本的に s_articles からデータを取得し、id = s_articles.main_details_id である s_articles_details のデータと結合します。

私が達成しようとしていたのは次のとおりです。

  1. s_articles_details が更新された場合、更新された行の ID を取得します。
  2. ID が s_articles テーブルの main_detail_id に対応しているかどうかを確認します
  3. 行を更新する場合は、main_detail_id = (s_articles_prices.articledetailID WHERE s_articles_prices.articleID = id AND min(s_articles_prices.price)) を設定します。

*これが機能しないことはわかっていますが、うまくいけば、私が何を言おうとしているのかを説明できます

癖:

  • s_articles_prices データベースから複数の一致がある可能性があります
  • s_articles_details テーブルを介して決定されるアクティブなバリエーション/価格である必要があります

助けや正しい方向へのプッシュは大歓迎です(私は壁に頭をぶつけないようにしています...)

編集:最終的な解決策

jean-françois-savardが正しい方向を示してくれたので、次の解決策を思いつきました。

0 投票する
1 に答える
1632 参照

mysql - Windows システムで Shopware 5 を開発するにはどうすればよいですか?

実際のショップウェア 5 は、xampp (5.6.3) を使用した Windows システム (win7) では動作しません。正しくインストールされ、フロントエンドとバックエンドは問題ありませんが、データを mysql データベースに保存する手順を実行したい場合 (特にバックエンドで新しい管理者ユーザー アカウントを開く場合)、データ入力はありません。Linux システムでは、完全に動作します。

0 投票する
3 に答える
4262 参照

php - Shopware - $sUserLoggedIn-Variable をウィジェットに渡す

現在、Shopware-Widget でユーザーがログインしているかどうかをリクエストする際に問題が発生しています。ユーザーがログインしていない場合、感情ページの一部の要素を非表示にする必要があるため、これを行う必要があります。私がしたことは、component_html.tpl のコードを次のように変更することでした。

残念ながら、Shopware はデフォルトでテンプレート変数 (この場合は $sUserLoggedIn) をウィジェットに渡しません。問題を解決する方法がわかりません。

どんな助けでも大歓迎です:)よろしく

0 投票する
2 に答える
2834 参照

.htaccess - .htaccess を変更して特定の URL にリダイレクトする

ショップウェアの .htaccess ファイルを変更して、誰かが自分のショップで存在しないサイトを開いたときに特定の URL にリダイレクトするようにしたいと考えています。

これは私の .htaccess です

私はグーグルでたくさん検索し、いくつかのことを試しましたが、うまくいきませんでした。