バグを説明する
初めてポッドを使用します。 これに遭遇した(マスターを使用して再現):新しく追加されたフィールドの保存時にエラーが発生した場合、 classes/PodsAPI::save_pod
cache_flush_pods
呼び出す前にベイルアウトします。 他のフィールドはまだデータベースに保存されているように見えますが、キャッシュがフラッシュされるまでエンドユーザーには表示されません。
現在の改訂行番号2356 :
if ( ! empty( $errors ) ) {
return pods_error( $errors, $this );
}
$this->cache_flush_pods( $pod );
(PS私が知る限り、フィールドの保存に失敗したためのエラー処理は行われていないようです。)
再現するには
動作を再現する手順:
観察:保存後に新しく追加されたフィールドは表示されません
問題-LabelBotは、0.98の信頼度で、この問題にラベルType: Bug
を自動的に適用します。 このコメントに:thumbsup:または:thumbsdown:のマークを付けて、ボットのフィードバックを提供してください。
リンク:アプリのホームページ、ダッシュボード、このボットのコード。
+1同じ問題があります。 保存された名前を設定してもエラーは発生しません。
#4122を参照してください。これは、フィールド名、分類法、ポストタイプなどに適用する必要があります。予約名フィールドリストにあるフィールド名、ポストタイプ、または分類法を誰かが入力できないようにする必要があります。
「status」というラベルの付いたフィールドで同じ問題が発生したバグレポート#5440を提出しました。 ただし、「ステータス」は「Wordpress」の予約済み用語リストにはありません。 上記の場合から、「name」はそのリストに含まれていますが、「foobar」は含まれていません。 同じことがPHPの予約語リストにも当てはまります。
WordPressリスト: (https://codex.wordpress.org/Reserved_Terms)
PHPリストhttps://www.php.net/manual/en/reserved.php
おそらく、予約語の他のリストも干渉していますか?
@raoulunger予約キーワードに関する最新のPRを試しましたか?
編集: status
はWordPressの予約キーワードではありませんが、ポッドオブジェクトフィールドの1つとして使用されるため、ポッド用です。 (現時点ではまだ調査中です)
こんにちは、私はあなたが質問をかき集めたのを見ます;-)。 調査していただきありがとうございます。
はい、調査の結果、 status
はポッド内のpost_status
エイリアスであることが判明しました(マジックタグなどで使用するため)。
デフォルトのキーとエイリアスの完全なリスト:
ID ==> id
post_title ==> title & name
post_content ==> content
post_excerpt ==> excerpt
post_author ==> author
post_date ==> created & date
post_date_gmt
post_status ==> status
comment_status
ping_status
post_password
post_name ==> slug & permalink
to_ping
pinged
post_modified ==> modified
post_modified_gmt
post_content_filtered
post_parent ==> parent
guid
menu_order
post_type ==> type
post_mime_type
comment_count
comments
@ sc0ttkclark @jimtrueこの問題は解決できると思いますが、同意しますか?
わかりました、それは「ステータス」に関する限り問題を明確にします—これを理解してくれて、そしてリストをありがとう!
予約語の使用に関するより広範な問題(このトピック、および#4122)を解決するには、いくつかのオプションがあるようです。
ちなみに、私はここで本当に助けることができないので、もちろんこれをすべて提案するのは簡単です-私のコーディングスキルは非常に限られています、ごめんなさい!
乾杯!
IDは単に予約されたキーワードであり、変更することはできないと思います。
警告については、現在表示されていますが、これはAJAX(サーバー側)を介して行われ、入力時に直接行われません。 これは将来追加するものだと思いますが、メンテナンスリリースとしてではありません。
ドキュメントは常に良い考えです。 @jimtrue私が使用できるこのためのドキュメントページを作成できますか?
文書化されるまで閉じることはできません。 フィールドとして作成するために機能しない他の「エイリアス」はありますか? すなわち、「タイトル」「親」など?
これは私がこれまでに見つけることができたすべてです(すでに述べたWPコアキーワードを除いて)
これらのフィールドの追加を許可しない理由を説明する必要があるため、これにはパッチを適用する必要があります。 現在、私たちは彼らに情報を提供していません。
これは完全に正しいわけではありません。AJAXはエラーメッセージを返しますが、保存した場合にのみ返されます。
問題を複製したときに、目に見えるエラーは表示されませんでした。 ユーザーに表示されるエラーがない場合、それは問題です。
最新のPRでテストしましたか? #5441
これらの予約済みキーワードはフィールド名に使用できることに注意してください。 ポッド(CPT /税)ではありません。#5428を参照してください。
また、エラーメッセージも表示されませんでした(そのため、混乱が生じました)。 ただし、最新のPRでテストしたことはありません。これは、その方法がまったくわからないためです(申し訳ありませんが、ここではまったく新しい人です)。
2019年8月19日には、17時50で、ジョリーHogeveen [email protected]書きました:
最新のPRでテストしましたか? #5443 https://github.com/pods-framework/pods/pull/5443
これらの予約済みキーワードはフィールド名に使用できることに注意してください。 ポッド(CPT / Tax)については、#5428https ://github.com/pods-framework/pods/pull/5428を参照して—
あなたが言及されたのであなたはこれを受け取っています。
、直接このメールに返信GitHubの上でそれを見るhttps://github.com/pods-framework/pods/issues/5420?email_source=notifications&email_token=AM2NSKDD43ZU2JY47LPKRV3QFK6LTA5CNFSM4ICZDB72YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4TNDNQ#issuecomment-522637750 、またはスレッドミュートhttps://github.com/をnotifys / unsubscribe-auth / AM2NSKESXEIVUY3PLHRRMW3QFK6LTANCNFSM4ICZDB7Q 。
@ sc0ttkclark @jimtrueこれを閉じることはできますか?
pods_errorを送信する前にキャッシュフラッシュを移動すると、このチケットの主な焦点を解決できます。
#5459で修正
申し訳ありませんが、反応が遅くなりましたが、ありがとうございます!
2019年9月5日には、14時27分で、スコットキングスレークラーク[email protected]は書きました:
クローズ#5420 https://github.com/pods-framework/pods/issues/5420 via#5459https ://github.com/pods-framework/pods/pull/5459 。
—
あなたが言及されたのであなたはこれを受け取っています。
、直接このメールに返信GitHubの上でそれを見るhttps://github.com/pods-framework/pods/issues/5420?email_source=notifications&email_token=AM2NSKBMJPPMDU5DSLKEPWTQID3JNA5CNFSM4ICZDB72YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOTOL3AQY#event-2610409539 、またはスレッドミュートhttps://github.com/を通知/購読解除-auth / AM2NSKDMLL2WOT3F7ITJ47TQID3JNANCNFSM4ICZDB7Q 。