バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > ご注文手続き画面に新たにラジオボタン項目を追加したい

フロント機能

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
gwkozaki
投稿日時: 2019/11/12 15:31
対応状況: −−−
常連
登録日: 2019/7/30
居住地: 日本
投稿: 53
ご注文手続き画面に新たにラジオボタン項目を追加したい
▼テンプレート
[EC-CUBE] EC-CUBE4.0.3、新規インストール
[レンタルサーバ] ローカル環境

[現象]

現在、ご注文手続き画面にラジオボタンの項目追加を考えております。

以下のEntityのカスタマイズを参照しながら、データベースの追加までは出来ました。
https://doc4.ec-cube.net/customize_entity

app\Customize\Entity\Example.phpと、app\Customize\Repository\ExampleRepository.phpを追加し、idとnameを持ったテーブルを作成し、
Migrationファイルを作成し、id=1とid=2の2つのデータをExampleテーブルに追加しております。

その後、app\Custmize\Entity\OrderTrait.phpにより、Orderテーブルにexample_idをExampleテーブルのidとJoinする形で追加しました。

しかしその後、OrderTraitのexample_idに@FormAppendを追記してラジオボタンを表示しようとすると、以下のエラーが発生し表示できない状態です。
Expected value of type "Customize\Entity\Example" for association field "Eccube\Entity\Order#$example_id", got "integer" instead.


int型になっていないとのエラーだと思うのですが、Exampleテーブルのid、Orderに追加したexample_id共にint(10)でテーブルが作成してあります。
また、mappedをfalseにするとラジオボタン 自体は表示されていたため、データのやり取りができていないのではと考えています。

以下にExample.phpとOrderTrait.phpを添付いたしますので、
どこかおかしな点があれば、ご教授いただけると幸いです。
何卒よろしくお願い申し上げます。


Example.php
<?php

namespace Customize\Entity;

use Doctrine\ORM\Mapping as ORM;

use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
use Symfony\Component\Validator\Mapping\ClassMetadata;

if (!class_exists('\Eccube\Entity\Example')) {
    /**
     * Shop
     *
     * @ORM\Table(name="dtb_example")
     * @ORM\InheritanceType("SINGLE_TABLE")
     * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255)
     * @ORM\HasLifecycleCallbacks()
     * @ORM\Entity(repositoryClass="Customize\Repository\ExampleRepository")
     */
    class Example extends \Eccube\Entity\AbstractEntity
    {
        /**
         * @ORM\Column(name="id", type="integer", options={"unsigned":true})
         * @ORM\Id
         * @ORM\GeneratedValue(strategy="IDENTITY")
         */
        private $id;

        /**
         * @ORM\Column(name="name", type="string", length=255, nullable=false)
         */
        private $name;

        /**
         * Get id.
         * @return int
         */
        public function getId()
        {
            return $this->id;
        }

        /**
         * Set name.
         * @param string $name
         * @return Example
         */
        public function setName($name)
        {
            $this->name = $name;
            return $this;
        }

        /**
         * Get name.
         * @return string
         */
        public function getName()
        {
            return $this->name;
        }
    }
}



OrderTrait.php
<?php

namespace Customize\Entity;

use Doctrine\ORM\Mapping as ORM;
use Eccube\Annotation as Eccube;
use Symfony\Component\Validator\Constraints as Assert;

/**
 * @Eccube\EntityExtension("Eccube\Entity\Order")
 */
trait OrderTrait
{
    /**
     * @var \Customize\Entity\Example
     * @ORM\ManyToOne(targetEntity="Customize\Entity\Example")
     * @ORM\JoinColumns({
     *   @ORM\JoinColumn(name="example_id", referencedColumnName="id", nullable=true)
     * })
     * @Assert\NotBlank
     * @Eccube\FormAppend(
     *  auto_render=true,
     *  type="Symfony\Component\Form\Extension\Core\Type\ChoiceType",
     *  options={
     *  "eccube_form_options":{
     *    "auto_render":true
     *  },
     *  "choices":{
     *    "選択肢1":1,
     *    "選択肢2":2,
     *  },
     *  "label":"テスト",
     *  "required":true,
     *  "expanded":true,
     *  "multiple":false,
     *  "data":1,
     *  })
     */
    private $example_id;

    /**
     * @param  integer  $example_id
     * @return Order
     */
    public function setExampleId($example_id = 1)
    {
        $this->example_id = $example_id;
        return $this;
    }

    /**
     * @return integer
     */
    public function getExampleId()
    {
        return $this->example_id;
    }
}
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
 » ご注文手続き画面に新たにラジオボタン項目を追加したい gwkozaki 2019/11/12 15:31
     Re: ご注文手続き画面に新たにラジオボタン項目を追加したい umebius 2019/11/12 23:59
       Re: ご注文手続き画面に新たにラジオボタン項目を追加したい gwkozaki 2019/11/13 10:48
       Re: ご注文手続き画面に新たにラジオボタン項目を追加したい gwkozaki 2019/11/14 14:55
         Re: ご注文手続き画面に新たにラジオボタン項目を追加したい umebius 2019/11/16 22:54
           Re: ご注文手続き画面に新たにラジオボタン項目を追加したい gwkozaki 2019/11/18 9:24
           Re: ご注文手続き画面に新たにラジオボタン項目を追加したい gwkozaki 2019/11/28 10:38
             Re: ご注文手続き画面に新たにラジオボタン項目を追加したい umebius 2019/11/28 10:52
               Re: ご注文手続き画面に新たにラジオボタン項目を追加したい gwkozaki 2019/11/28 16:01
                 Re: ご注文手続き画面に新たにラジオボタン項目を追加したい umebius 2019/11/28 18:59
                   Re: ご注文手続き画面に新たにラジオボタン項目を追加したい gwkozaki 2019/11/29 9:57
                     Re: ご注文手続き画面に新たにラジオボタン項目を追加したい umebius 2019/11/29 14:24
                     Re: ご注文手続き画面に新たにラジオボタン項目を追加したい gwkozaki 2021/7/9 17:10

 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は96,038名です
総投稿数は111,651件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2325
5
umebius
2085
6
yuh
1893
7
h_tanaka
1852
8
red
1574
9
mcontact
1536
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
804
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

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

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