バージョン選択

フォーラム

メニュー

オンライン状況

42 人のユーザが現在オンラインです。 (31 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 42
もっと...

サイト内検索

質問 > 管理機能 > 商品CSV追加項目の出力エラー

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
roland
投稿日時: 2020/5/29 16:53
対応状況: −−−
半人前
登録日: 2020/3/17
居住地:
投稿: 16
商品CSV追加項目の出力エラー
お世話になります。

当方EC CUBE 4系を使用しております。
カスタマイズで入れた入荷日の項目を、商品一覧に表示させて入荷日で絞込み検索できるようにしました。
CSVダウンロードのためSQLのCSV項目のdtb_csvテーブル部分に、入荷日のカラムを追加して、ダウンロードCSVのヘッダーに項目名は入るようにしました。

値が出力されないので、Eccube¥Entity¥Product.phpに項目を追加しましたが、値が出力されないみたいです。

どのファイルを調査すればいいか、お詳しい方いらっしゃいませんでしょうか?

宜しくお願い致します。
468
投稿日時: 2020/6/1 9:00
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 2591
Re: 商品CSV追加項目の出力エラー
>dtb_csvテーブル部分に、入荷日のカラムを追加して
こちらはdtb_csvのentity_nameカラムとfield_nameカラムを追加されたという事でしょうか?

>値が出力されないので、Eccube¥Entity¥Product.phpに項目を追加しましたが、値が出力されないみたいです。
項目を追加されたとは、getXXXXXのメソッドを追加したという事でしょうか?

内部的にdtb_csvテーブルのentity_nameとfield_nameを元に
エンティティクラスのメソッドを特定していると思いますので
それらが一致している必要があるかと思います。
field_nameはスネークケースの値をキャメルケースに変換していると思われます。

例えば、free_area→getFreeArea()の関係になっていると思います。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

roland
投稿日時: 2020/6/1 15:47
対応状況: −−−
半人前
登録日: 2020/3/17
居住地:
投稿: 16
Re: 商品CSV追加項目の出力エラー
ご連絡させていただきありがとうございます。

>こちらはdtb_csvのentity_nameカラムとfield_nameカラムを追加されたという事でしょうか?
はい、こちらはentity_name→Eccube\\Entity\\Product、field_name→arrival_dateとして1-商品CSVに追加して設定しました。

>項目を追加されたとは、getXXXXXのメソッドを追加したという事でしょうか?
こちらは、Eccube\Entity\Product.phpに下の内容を追加しました。

private $arrival_date;

public function setArrivalDate($arrivalDate)
{
$this->arrival_date = $arrivalDate;

return $this;
}
public function getArrivalDate()
{
return $this->arrival_date;
}


>field_nameはスネークケースの値をキャメルケースに変換していると思われます。

こちらよく理解していないので調べてみますが、スネークケース→free_area、キャメルケース→getFreeArea()ということでしょうか?
468
投稿日時: 2020/6/2 12:26
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 2591
Re: 商品CSV追加項目の出力エラー
設定に関しては投稿いただいた内容で問題はないようにみえます。

Eccube\Entity\Product.phpに追加した$arrival_dateはDateTimeが格納される予定ですか?
以下のような感じで
@ORM\Column(name="arrival_date", type="datetimetz", nullable=true)
アノテーションでDBとのマッピングは指定されているのですよね?


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

roland
投稿日時: 2020/6/2 13:56
対応状況: −−−
半人前
登録日: 2020/3/17
居住地:
投稿: 16
Re: 商品CSV追加項目の出力エラー
ご連絡ありがとうございます。

>Eccube\Entity\Product.phpに追加した$arrival_dateはDateTimeが格納される予定ですか?
はい、こちらはDateTimeが格納される予定です。

>@ORM\Column(name="arrival_date", type="datetimetz", nullable=true)
アノテーションでDBとのマッピングは指定されているのですよね?

こちらに関しては、理解不足ですみません、Eccube\Entity\Product.php内に、


private $arrival_date;
/**
* @var \DateTime
*
* @ORM\Column(name="arrival_date", type="datetimetz", nullable=true)
*/

このような内容で記述してますが、他のファイルに記述必要でしょうか?

恐れ入りますが、宜しくお願い致します。
468
投稿日時: 2020/6/6 14:48
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 2591
Re: 商品CSV追加項目の出力エラー
私の認識不足かもしれませんがアノテーションは変数定義の上に書くものかと思っておりますが如何でしょうか?

/**
* @var \DateTime
*
* @ORM\Column(name="arrival_date", type="datetimetz", nullable=true)
*/
private $arrival_date;

もしかしたら関係ないかもしれませんが...DBと上手く連携できていないのであれば、
arrival_dateカラムから値を取り出せていないのかなと思ったりしました。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

公式ストアEC-CUBE4系デザインテンプレート続々リリース中

統計情報

総メンバー数は65,865名です
総投稿数は98,028件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
468
2591
4
nanasess
2101
5
umebius
1717
6
yuh
1612
7
red
1422
8
h_tanaka
1038
9
fukap
907
10
tsuji
863
11
shutta
835
12
tao_s
792
13 ramrun 789
14 karin 657
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
485
20 tonton 437


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.