How do I use nested models with a list of background shapes? I want to create a nested model with a custom template

How do I use nested models with a stationery list? I want to create a nested model with a custom template, but it gives an error: "Render of undefined"

I want to make a look with basic forms using a custom template. Template

<div class="container-fluid add-apikey" data-class="add-apikey">
<div class="page-head">
    <h2>API Key</h2>
</div>
<div class="cl-mcont">
    <div class="row">

        <div class="col-sm-12">
            <!-- New Zone -->

            <div class="block-flat">
                <form class="form-horizontal" role="form">
                    <div class="header">
                        <h3>Create New API Key</h3>
                    </div>
                    <div class="content">
                        <div class="formAlerts"></div>
                        <div class="formconfirm"></div>
                        <div class="required" data-fields="apiName">

                        </div>

                        <div class="required" data-fields="notes">

                        </div>

                        <div class="required" data-fields="weapons">

                        </div>
                        <div class="form-group editmode">
                            <div class="col-sm-offset-3 col-sm-9">
                                <button class="btn btn-primary readOnlySave" type="button">Generate Key</button>
                                <button class="btn btn-default readOnlyCancel">Cancel</button>
                            </div>
                        </div>
                    </div>
                </form>
            </div>

        </div>
        <!-- end new zone -->

    </div>
</div>

      

and js

//Add api keys
var //util
    util = require('./../../../util/util.js'),
    apiKeyAddTpl = require('./../templates/apikeyadd.hbs'),
    backboneFormList = require('backboneFormsList'),
    backboneFormsModal = require('backboneFormsModal');

module.exports = Backbone.Form.extend({

    template: apiKeyAddTpl,

    schema: {
        apiName: {
            type: 'Text',
            fieldClass: "field-apiName form-group",
            editorClass: "form-control editmode"
        },
        notes: {
            type: 'List',
            fieldClass: "field-notes form-group",
            editorClass: "form-control editmode"
        },
        weapons: {
            type: 'List',
            itemType: 'Object',
            fieldClass: "field-weapon form-group",
            editorClass: "form-control editmode",
            subSchema: {
                id: 'Number',
                name: {
                    type: 'Text'
                }
            }
        }
    }

});

      

But it gives me an error when I want to add a field under the weapon. Error: Unable to read property "render" from undefined.

+3


source to share


1 answer


You need to expand the form Backbone.View.extend

. This view has an attribute el

. You must associate this attribute with form

. And views have a method render

that you can override. Doc: Plank View



0


source







All Articles