I'm using a Repeatable element that contains several Select elements in
a form displayed by a Catalyst controller.  The problem is, the Select
elements aren't being populated.  Before I put them into the Repeatable
element, they worked fine.  Does anybody have a fix for this?

Here's my controller code:

sub edit :Local :FormConfig('invoices/edit_invoice.yml') {
  my ($self, $c, $ivc_id) = @_;

  my $form = $c->stash->{form};
  my $invoice = ($ivc_id) ? $c->model('DB::Invoices')->find($ivc_id)
                          : $c->model('DB::Invoices')->new_result({});

  if ($c->request->param('cancel')) {
    $c->response->redirect($c->uri_for("/invoices"));
    $c->detach();
  }

  if ($form->submitted_and_valid()) {
    $form->model->update($invoice);
    $c->response->redirect($c->uri_for("/invoices"));
    $c->detach();
  } else {
    $form->model->default_values($invoice);
  }

  $c->stash->{ivc_id} = $ivc_id;
  $c->stash->{template} = 'invoices/invoice_edit.tt';
  $c->stash->{stylesheet} = 'invoices/invoice_edit.css';
}


And here's the YML for the form:
---
load_config_file: setup.yml
auto_fieldset:
  attributes:
    class: field_group
elements:
  - type: Block
    elements:
      - type: "+Coatesoft::FormFu::Element::DataLabel"
        label: Invoice Number
        name: ivc_id
  - type: Block
    elements:
      - type: Select
        name: ivc_vendor
        label: Vendor
        constraints:
          - type: Integer
          - type: Required
        model_config:
          resultset: Contacts
          id_column: ctc_id
          label_column: ctc_common_name
  - type: Block
    elements:
      - type: Text
        name: ivc_invoice_number
        label: Vendor's Invoice Number
        size: 20
        constraints:
          - type: Printable
  - type: Block
    elements:
      - type: Text
        name: ivc_invoice_date
        label: Invoice Date
        size: 15
        constraints:
          - type: Required
  - type: Fieldset
  - type: Repeatable
    name: invoice_lines
    nested_name: invoice_items
    attributes:
      class: data_row
    elements:
      - type: Hidden
        name: ivi_id
      - type: Block
        attributes:
          class: ivi_desc
        elements:
          - type: Text
            name: ivi_desc
            size: 75
      - type: Block
        attributes:
          class: ivi_unit_price
        elements:
            - type: Text
              name: ivi_unit_price
              size: 8
      - type: Block
        attributes:
          class: ivi_unit_price
        elements:
          - type: Text
            name: ivi_quantity
            size: 5
      - type: Block
        attributes:
          class: ivi_total_price
        elements:
          - type: "+Coatesoft::FormFu::Element::DataLabel"
            name: ivi_total_price
      - type: Block
        attributes:
          class: ivi_account
        elements:
          - type: Select
            name: ivi_account
            model_config:
              resultset: Accounts
              id_column: acc_id
              label_column: acc_title
      - type: Block
        attributes:
          class: ivi_item
        elements:
          - type: Select
            name: ivi_item
            empty_first: 1
            model_config:
            model_config:
              resultset: Items
              id_column: itm_id
              label_column: itm_description
      - type: Block
        attributes:
          class: ivi_tax_type
        elements:
          - type: Select
            name: ivi_tax_type
            empty_first: 1
            model_config:
              resultset: Taxes
              id_column: tax_id
              label_column: tax_desc
  - type: Fieldset
    attributes:
      class: buttons
  - type: Submit
    name: submit
    value: Save Invoice
  - type: Submit
    name: cancel
    value: Cancel
  - type: Hidden
    name: count

filter:
  - TrimEdges
  - HTMLEscape



Thanks,
Greg Coates
Coatesoft


_______________________________________________
HTML-FormFu mailing list
HTML-FormFu@lists.scsys.co.uk
http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/html-formfu

Reply via email to