前提・実現したいこと
racesテーブルの中のcheck_points、tagsというカラムの中身を配列かオブジェクトにして
chromeのJSONViewで表示した時に+で展開できるようにしたいです。
racesテーブルの中に7つのカラムを用意しています。
◦race_id
◦race_name
◦check_point_count
◦race_start_date
◦race_end_date
◦check_points
◦tags
###phpMyAdminのSQL上で下記のクエリを実行しました。
SELECT * FROM `races` WHERE 1; insert into races(race_id, race_name, check_point_count, race_start_date, race_end_date, check_points, tags) values(1, '{$defT_NAME}', '10', '2020-04-23 07:00:00 +0900', '2020-04-23 10:00:00 +0900', '[ { "check_point_num":1, "check_point_name":"受付", "barrier_time":"2020-04-23 09:00:00 +0900" }, { "check_point_num":2, "check_point_name":"スタート", "barrier_time":"2020-04-23 09:00:00 +0900" }, { "check_point_num":3, "check_point_name":"中継地点)", "barrier_time":"2020-04-23 09:00:00 +0900" }, { "check_point_num":4, "check_point_name":"ゴール", "barrier_time":"2020-04-23 09:00:00 +0900" }, ]', "tags":'[ {"id":"04F0B93A665D80","bib_no":"1","title":"hogehoge-taro"}, {"id":"04D1B93A665D80","bib_no":"2","title":"hogehoge-jiro"}, {"id":"0413B93A665D81","bib_no":"3","title":"hogehoge-rena"}, ]');
上記クエリを実行すると下記(現在ブラウザ表示できているjsonコード)になります
現在ブラウザ表示できているjsonコード
JSONViewの表示 閉じタグの-はracesテーブルのみ
check_pointsとtagsの中身は文字列で表示はできます
[ - { "race_id":1, "race_name":"{$defT_NAME}", "check_point_count": 4, "race_start_date":"2020-04-23 07:00:00 +0900", "race_end_date":"2020-04-23 10:00:00 +0900", "check_points":"[ { "check_point_num":1, "check_point_name":"受付", "barrier_time":"2020-04-23 09:00:00 +0900" }, { "check_point_num":2, "check_point_name":"スタート", "barrier_time":"2020-04-23 09:00:00 +0900" }, { "check_point_num":3, "check_point_name":"中継地点)", "barrier_time":"2020-04-23 09:00:00 +0900" }, { "check_point_num":4, "check_point_name":"ゴール", "barrier_time":"2020-04-23 09:00:00 +0900" }, ]", "tags":"[ {"id":"04F0B93A665D80","bib_no":"1","title":"hogehoge-taro"}, {"id":"04D1B93A665D80","bib_no":"2","title":"hogehoge-jiro"}, {"id":"0413B93A665D81","bib_no":"3","title":"hogehoge-rena"}, ]", ]
###実現したいブラウザで表示したいjsonコード
JSONViewの表示 テーブルを展開していない状態
[ - { race_id: "1", race_name: "{$defT_NAME}", check_point_count: "10", race_start_date: "2017-04-23 07:00:00", race_end_date: "2017-04-23 10:00:00", check_points:[ + {・・・} ], tags: [ + {・・・} ] } ]
実現したいcheck_pointsとtagsを展開した表示
[ - { "race_id":1, "race_name":"{$defT_NAME}", "check_point_count": 4, "race_start_date":"2020-04-23 07:00:00 +0900", "race_end_date":"2020-04-23 10:00:00 +0900", "check_points": [ - { { "check_point_num":1, "check_point_name":"受付", "barrier_time":"2020-04-23 09:00:00 +0900" }, { "check_point_num":2, "check_point_name":"スタート", "barrier_time":"2020-04-23 09:00:00 +0900" }, { "check_point_num":3, "check_point_name":"中継地点)", "barrier_time":"2020-04-23 09:00:00 +0900" }, { "check_point_num":4, "check_point_name":"ゴール", "barrier_time":"2020-04-23 09:00:00 +0900" }, } ], "tags": [ - { {"id":"04F0B93A665D80","bib_no":"1","title":"hogehoge-taro"}, {"id":"04D1B93A665D80","bib_no":"2","title":"hogehoge-jiro"}, {"id":"0413B93A665D81","bib_no":"3","title":"hogehoge-rena"} } ], ]
試したこと
➀SOL上でのクエリの実行で
check_points: “{}” tags: “{}”
➁
JSON形式について参考にしたサイト
このサイトを参考にしてSOL上でのクエリの実行で
check_points: [] tags: []
とやってみましたが
➀では#4025 -CONSTRAINTで制約が守れていない
➁では文字列でなければいけないというエラーが出てしまいます。
ご助言よろしくお願い致します。
あなたの回答
tips
プレビュー