エクスプレスで入力済のデータ修正用フォームの作成方法をお教え下さい

2020年12月4日 at 15:28

xreaに新規インストールして以下の作業を行い
エクスプレスでデータを追加したり、
閲覧したりは出来るようになりましたが、
入力済のデータを修正する方法を見つけられませんでした


エクスプレス
データオブジェクトを追加
 属性を追加
 フォームにフィールドセットを追加
-
新規データ入力用
-
新しいページを追加
 ナビゲーション-フォームを追加
  既存のエクスプレスエンティティー
   エンティティフォームに先のフォームを指定
-
入力済データリスト表示用
-
新しいページを追加
 エクスプレス-一覧を追加
  エンティティに先のデータオブジェクトを指定
-
データ閲覧用
-
新しいページを追加
 エクスプレス-詳細を追加
  エントリー 他のページのリストブロックからエントリーを取得
  エンティティ データオブジェクトを選択
  データを表示するエンティティフォームを選択
-
入力済データリスト表示用のページを編集
 追加済のエクスプレス-一覧ブロック エントリーリストを編集
  結果-詳細ページへリンクでデータ閲覧用ページを選択
   リンクを付けるカラムにチェック

-------------------------------
# concrete5 Version
Core Version - 8.5.4
Version Installed - 8.5.4
Database Version - 20200609145307

# Database Information
Version: 5.7.29-log
SQL Mode:

# concrete5 Packages
None

# concrete5 Overrides
None

# concrete5 Cache Settings
Block Cache - On
Overrides Cache - Off
Full Page Caching - Off
Full Page Cache Lifetime - Every 6 hours (default setting).

# Server Software
Apache

# Server API
cgi-fcgi

# PHP Version
7.3.15

# PHP Extensions
bcmath, cgi-fcgi, Core, ctype, curl, date, dom, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, intl, json, libxml, mbstring, mysqli, mysqlnd, openssl, pcre, PDO, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, Reflection, session, SimpleXML, soap, sockets, SPL, sqlite3, standard, tokenizer, xml, xmlrpc, xsl, Zend OPcache, zip, zlib

# PHP Settings
max_execution_time - 300
log_errors_max_len - 1024
max_file_uploads - 20
max_input_nesting_level - 64
max_input_time - 600
max_input_vars - 1000
memory_limit - 500M
post_max_size - 1000M
upload_max_filesize - 1000M
mbstring.regex_stack_limit - 100000
mysqli.max_links - Unlimited
mysqli.max_persistent - Unlimited
pcre.backtrack_limit - 1000000
pcre.recursion_limit - 100000
pgsql.max_links - Unlimited
pgsql.max_persistent - Unlimited
session.cache_limiter - no value
session.gc_maxlifetime - 7200
soap.wsdl_cache_limit - 5
opcache.max_accelerated_files - 10000
opcache.max_file_size - 0
opcache.max_wasted_percentage - 5

タグ:

Re: エクスプレスで入力済のデータ修正用フォームの作成方法をお教え下さい

2020年12月8日 at 13:43
teraさま

こんにちは!
Expressでの開発、大変お疲れ様です。
teraさまが作ろうとなさっておられるのは、Expressオブジェクトから
エントリー一覧を表示させ、そこのレコード行をクリックしてデータ
を修正するのではなく、フォームブロックとして、ページの一部に
ブロックを配置してデータを修正なさりたいということでしょうか?
 

Re: Re: エクスプレスで入力済のデータ修正用フォームの作成方法をお教え下さい

2020年12月8日 at 15:27
はい
一覧からレコードを選択し修正用のページへ移動できればと考えてます
新規レコード追加のページができるので、出来そうな気もするのですが
 

Re: エクスプレスで入力済のデータ修正用フォームの作成方法をお教え下さい

2020年12月8日 at 17:06
teraさま

 私も、以前、teraさまと全く同じことを行なおうと、Express
エントリーの一覧をフォームブロック内に表示させ、そのレコード
行をクリックすると、詳細画面を表示することはできましたが、
そのエントリーを編集することができませんでした。

 結果、外部フォームというものを作成して、Expressエンティティ
からデータを読み込み、テキストボックスなどに取得した値を
表示させることで実現いたしました。

 外部ブロックの作り方に関しては、このURLで学びました。
http://www.cherrypieweb.com/1110

 作成には、phpの知識が必要になります。ただ、外部ブロックの
作り方をマスターしますと、かなりの自由度で、行いたいことが
実現できるようになります。
 

Re: Re: エクスプレスで入力済のデータ修正用フォームの作成方法をお教え下さい

2020年12月9日 at 10:02
標準で出来ればよかったのですが・・・
頑張ってやってみます
ありがとうございます
 

Re: エクスプレスで入力済のデータ修正用フォームの作成方法をお教え下さい

2020年12月9日 at 16:29
teraさま

こんにちは!
teraさまの目的を再現するべく、簡単なサンプルページを
作ってみました。

http://demo.survey-support.jp/test/index.php/goods

teraさまのイメージはこんな感じでしょうか?
もし、このような形でよろしければ、サンプルコードが
ございますので、ご連絡いただければ幸いです。

注意:簡単なサンプルサイトですので、バリデーション(エラー検知)
や、エラーメッセージの表示などは実装していません。
 

Re: Re: エクスプレスで入力済のデータ修正用フォームの作成方法をお教え下さい

2020年12月10日 at 10:01
ハイキック 様
いただければありがたいです
研究材料にさせてください
 

Re: エクスプレスで入力済のデータ修正用フォームの作成方法をお教え下さい

2020年12月10日 at 11:44
teraさま

 おはようございます。
研究材料というほどのものではございませんが、参考には
なるかもしれませんので、ダウンロード先をご案内いたします。

http://github.com/tkp-kitazume/ykproject

にアクセスなさっていただき、
sample.php
shosai.php
Controllerフォルダの中にも、同じ名前のファイル(2つ)が
入っておりますので、すべてダウンロードしてください。

いずれもphpファイルですので、メモ帳などのエディタで
ご覧いただけます。

実際には、これらのファイルを、
teraさまのconcrete5がインストールされているサーバの
/application/blocks/external_form/forms の下にsample.phpと
shosai.php、Controllerフォルダを設置します。
そのうえで、concrete5作成キャンバスから、ブロックを
追加しますが、その時、「外部フォーム」を選択します。
外部フォームブロックを配置する際、フォーム選択画面が
開くので、「sample」を選択します。
そうしますと、tera様のキャンバスにsampleの外部フォーム
が配置されます。
もちろん、Expressエンティティが未作成なので、いきなり
配置するとエラーが出ます。

まずは、sample.phpと、shosai.phpをじっくりご覧になって
いただきたいと思います。
ちなみに、sample.php は、Expressデータベースの商品を
一覧(グリッド表示)する部分、shosai.phpは、「編集」ボタン
を押下した際に遷移する「編集画面」のことです。
頑張ってください。
よろしくお願いいたします。
 

Re: Re: エクスプレスで入力済のデータ修正用フォームの作成方法をお教え下さい

2020年12月10日 at 12:29
ありがとうございます
いただきます
 

Re: エクスプレスで入力済のデータ修正用フォームの作成方法をお教え下さい

2020年12月11日 at 11:19
teraさま

 おはようございます、。
Expressにおける、データの扱い方法については、英語のサイト
になりますが、こちらをご覧いただければ、phpを使った
Expressの扱い方がご理解いただけると思います。

http://documentation.concrete5.org/developers/express/creating-reading-searching-updating-and-deleting-express-entries