2

各フィールドに複数のオプションがあり、チェックボックスの行である必要があるフォームを実装しようとしています。このフォームを、行ヘッダーにフィールド名を、対応する行にチェックボックスオプションを付けて表示したいと思います。また、データベーステーブルの実装についてもサポートが必要です。どんな助けでもありがたいです。私はweb2pyを初めて使用します。前もって感謝します。

4

1 に答える 1

0

これまでに何を試しましたか?ブール値を使用したデータ モデルが必要なようです。

(models/???.py 内 -- db.py の後に実行され、DB が定義されていることを確認してください)

db.define_table('table_name', 
   Field('SomeFieldA', 'boolean')
   Field('SomeFieldB', 'boolean')
   Field('SomeFieldC', 'boolean')
   Field('SomeFieldD', 'boolean')
   ... etc ...
)

すぐに使用できる方法が思い浮かばないため、必要なレイアウトを取得するには、おそらくカスタム フォームを実装する必要があります。

カスタム フォームについては、こちらをご覧ください。

次のようなものから始める必要があります。

<table>
{{=form.custom.begin}}
  <thead>
    <tr>
    {{ #loop over form field labels... something like:
      for field in form.fields: }}
      <th>{{=field.label}}</th>
    {{ pass }}
    </tr>
  </thead>

  <tbody>
    <tr>
    {{for field in form.fields: }}
      <td>{{  =form.custom.widget[field]  }}</td>
      {{ # or directly access it without a loop with form.custom.widget.SomeFieldA }}
    {{ pass }}
    </tr>
  </tbody>      

  {{=form.custom.submit}}
{{=form.custom.end}} 
</table>

このコードのいずれもテストしていないことに注意してください。フォーム フィールドとラベルに間違ってアクセスしている可能性があります。フォームに事前入力する必要がある場合は、コントローラーで行います。上記のカスタム フォームのリンクでは、事前入力についても説明しています。

于 2012-07-31T15:40:44.383 に答える