08/05/06 に yaske<s.y...@gmail.com> さんは書きました:
> 新規レポートの作成時に入力を必須とし
> その後は変更不可能としリプライフォームに表示しない
> という動きをする項目を作成したいのですが
> 対応していないのでしょうか?
ちょっと検討したのですが、汎用的でかつすぐには無理そうです。
> フィールドの編集にて
> 「レポートの属性として扱う」のチェックを入れ
> 「ゲストによる変更を許可する」のチェックを外し
> 「デフォルト値」をnilにした場合
> そういった動作になりそうな気がしますが
> 現在は警告が表示され設定が出来ません。
この設定は新規投稿時にもゲストにはフィールドが見えなくなるため、
今回のニーズとはちょっと違いますね。
紛らわしいなと私も感じましたが。
> 例えばシンプルBTSの「概要」項目は
> ゲスト権限時には初期値からの変更を不可能にしておいたほうが良い気がします。
> 不慣れな人間がリプライの概要と勘違いして変更してしまうのが目に見えていますし
> リプライフォームもすっきりしそうです。
そういった設定ができると嬉しいケースは確かにあると思います。
とりあえず、汎用的にはすぐには無理そうですが、すぐに欲しいのであれば、
まったくスマートではありませんが、以下のパッチを試してみてください。
汎用的に出来るようにするのは時間があるときに考えてみます。
# オプションを1つ増やすのが簡単そうではありますね。
resource/ja/template/_default/message_form.rhtml に対するパッチで、
概要フィールド(フィールドIDが 'title') に対するものです。
'title' のところを変えて行を増やせば、別のフィールドにもいちおう対応できます。
--- message_form.rhtml
+++ message_form.rhtml
@@ -32,6 +32,7 @@
<% next if etype.report_attr && etype['hide_from_guest'] &&
Mode::GUEST.current? %>
<% next if etype.report_attr && !etype.allow_guest &&
Mode::GUEST.current? %>
<% next if etype.report_attr && !etype.allow_user && Mode::USER.current? %>
+ <% next if etype.id == 'title' && Mode::GUEST.current? %>
<tr>
<th <%= errors.tag_class(etype.id) %>>
<%= etype.name %><%= etype.required? ? '<small>*</small>' : '' %>
--
FUKUOKA Tomoyuki