Skip to Content
Menu
This question has been flagged

Hey i am trying to make a custom solution. At ERP end i have a module with both form and line view. For the portal my view is ready and all i have to do is to POST data into one2many fields i know how to do it for simple form but i am confused for my line view. here is my controller

@http.route('/create/evaluation-request', type='http', auth='public', website=True)
    def create_evaluation_request(self, **kw):
        evaluation = request.env['performance.evaluation']
        for key,value in kw.items(): #I used this loop to check values only
            print(key,value)#I dont know why this returns only first value of my line

 
         values = {
                        'emp_self': kw.get('emp_self'),
                        'remarks': kw.get('remarks'),
                     }

        evaluation.performance_lines.sudo().create(values)
        return request.render("gxs_performance_evaluation.evaluation_web_form_message", {})


Here is my Form view Template

<template id="performance_evaluation_record" name="Employee Performance">
            <t t-call="portal.portal_layout">
                <!--            <t t-set="o_portal_fullwidth_alert" groups="project.group_project_user">-->
                <!--                <t t-call="portal.portal_back_in_edit_mode">-->
                <!--                    <t t-set="backend_url" t-value="'/web#model=project.project&amp;id=%s&amp;view_type=form' % (project.id)"/>-->
                <!--                </t>-->
                <!--            </t>-->

                <t t-call="portal.portal_record_layout">
                    <t t-set="card_header">
                        <h5 class="mb-0">
                            <span class="float-right">
                                <a class="btn btn-success btn-sm" href="/performance-evaluations">
                                    <i class="fa fa-arrow-left"/>
                                    Back
                                </a>
                            </span>
                        </h5>
                    </t>
                    <t t-set="card_body">
                        <div class="container">
                            <form role="form" action="/create/evaluation-request/" method="POST">
                                <input type="hidden" name="csrf_token" t-att-value="request.csrf_token()"/>
                                <div style="text-align: center; background-color:#002e5b;">
                                    <h2 style="color:#fde428;">
                                        <b>Performance Evaluation</b>
                                    </h2>
                                </div>
                                <br/>
                                <div class="row" style="text-align: center; width: 100%;">
                                    <strong style="margin-left: 20px">Name:</strong>
                                    <span t-field="performance.employee" style="padding-right: 120px;"/>

                                    <strong>Start Date:</strong>
                                    <span t-field="performance.start_date" style="padding-right: 120px;"/>

                                    <strong>End Date:</strong>
                                    <span t-field="performance.end_date" style="padding-right: 120px;"/>

                                    <strong>Deadline:</strong>
                                    <span style="color:Red;" t-field="performance.deadline"/>
                                </div>
                                <br/>
                                <div style="text-align: center; background-color:#002e5b;">
                                    <h2 style="color:#fde428;">
                                        <b>Key Performance Areas</b>
                                    </h2>
                                </div>
                                <table style="width: 100%;">
                                    <thead>
                                        <tr class="active">
                                            <th>Name</th>
                                            <th>Description</th>
                                            <th>Weightage</th>
                                            <th>Employee Rate</th>
                                            <th>Employee Remarks</th>
                                            <!--                                    <th>Final Rating</th>-->
                                            <!--                            <th>Responsible Approver</th>-->
                                        </tr>
                                    </thead>
                                    <t t-foreach="performance.performance_lines" t-as="perform">
                                        <tr>

                                            <td t-if="perform.display_type=='line_section'" colspan="5"
                                                style="background-color:#668cff; text-align: center; color:#fde428;">
                                                <span t-field="perform.name"/>
                                            </td>
                                            <td t-else="perform.display_type!='line_section'">
                                                <span t-field="perform.name"/>
                                            </td>


                                            <td>
                                                <span t-if="perform.display_type!='line_section'"
                                                      t-field="perform.kpa_text"/>
                                            </td>
                                            <td>
                                                <span t-if="perform.display_type!='line_section'"
                                                      t-field="perform.weightage"/>
                                            </td>
                                            <td>
                                                <input t-if="perform.display_type!='line_section'" type="number"
                                                       class="form-control emp_self" name="emp_self"
                                                       min="1" max="10"
                                                       placeholder="Employee Rating"/>
                                            </td>

                                            <td>
                                                <input t-if="perform.display_type!='line_section'" type="text"
                                                       class="form-control remarks" name="remarks"
                                                       placeholder="Employee Remarks" widget="text"/>
                                            </td>
                                        </tr>
                                    </t>
                                </table>
                                <div class="clearfix oe_login_buttons">
                                    <button type="submit" class="btn btn-success" style="float: right;">Submit</button>
                                </div>
                            </form>
                        </div>
                    </t>
                </t>
            </t>
        </template>



Avatar
Discard
Related Posts Replies Views Activity
1
Jun 24
288
1
Jun 22
2685
2
Apr 22
2984
1
Jan 23
826
0
Sep 24
127