[IMP] models: move prefetching of records back to method _prefetch_field
[odoo/odoo.git] / doc / howto / howto_website / lectures-model-add
1 # HG changeset patch
2 # Parent 13c65b2eed8f84b951ff5a98051f64fe35ddcf0a
3
4 diff --git a/__openerp__.py b/__openerp__.py
5 --- a/__openerp__.py
6 +++ b/__openerp__.py
7 @@ -20,6 +20,7 @@
8          'security/ir.model.access.csv',
9          'views/templates.xml',
10          'data/teaching_assistants.xml',
11 +        'data/lectures.xml',
12      ],
13      'tests': [
14      ],
15 diff --git a/controllers/academy.py b/controllers/academy.py
16 --- a/controllers/academy.py
17 +++ b/controllers/academy.py
18 @@ -6,8 +6,10 @@ from openerp.addons.web.controllers impo
19  class academy(main.Home):
20      @http.route('/', auth='public', website=True)
21      def index(self):
22 +        lectures = http.request.env['academy.lectures'].search([])
23          tas = http.request.env['academy.tas'].search([])
24          return http.request.render('academy.index', {
25 +            'lectures': lectures,
26              'tas': tas,
27          })
28  
29 diff --git a/data/lectures.xml b/data/lectures.xml
30 new file mode 100644
31 --- /dev/null
32 +++ b/data/lectures.xml
33 @@ -0,0 +1,24 @@
34 +<openerp>
35 +    <data>
36 +        <record model="academy.lectures" id="lecture1">
37 +            <field name="name">Lecture 1</field>
38 +            <field name="date">2014-01-06</field>
39 +        </record>
40 +        <record model="academy.lectures" id="lecture2">
41 +            <field name="name">Lecture 2</field>
42 +            <field name="date">2014-01-08</field>
43 +        </record>
44 +        <record model="academy.lectures" id="lecture3">
45 +            <field name="name">Lecture 3</field>
46 +            <field name="date">2014-01-10</field>
47 +        </record>
48 +        <record model="academy.lectures" id="lecture4">
49 +            <field name="name">Lecture 4</field>
50 +            <field name="date">2014-01-13</field>
51 +        </record>
52 +        <record model="academy.lectures" id="lecture5">
53 +            <field name="name">Lecture 5</field>
54 +            <field name="date">2014-01-15</field>
55 +        </record>
56 +    </data>
57 +</openerp>
58 diff --git a/models/academy.py b/models/academy.py
59 --- a/models/academy.py
60 +++ b/models/academy.py
61 @@ -1,9 +1,16 @@
62  # -*- coding: utf-8 -*-
63  from openerp.models import Model
64 -from openerp.fields import Char, Html
65 +from openerp.fields import Char, Html, Date
66  
67  class TeachingAssistants(Model):
68      _name = "academy.tas"
69  
70      name = Char()
71      biography = Html()
72 +
73 +class Lectures(Model):
74 +    _name = 'academy.lectures'
75 +    _order = 'date ASC'
76 +
77 +    name = Char(required=True)
78 +    date = Date(required=True)
79 diff --git a/security/ir.model.access.csv b/security/ir.model.access.csv
80 --- a/security/ir.model.access.csv
81 +++ b/security/ir.model.access.csv
82 @@ -1,2 +1,3 @@
83  id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
84  access_academy_tas,access_academy_tas,model_academy_tas,,1,0,0,0
85 +access_academy_lectures,access_academy_lectures,model_academy_lectures,,1,0,0,0
86 \ No newline at end of file
87 diff --git a/views/templates.xml b/views/templates.xml
88 --- a/views/templates.xml
89 +++ b/views/templates.xml
90 @@ -22,6 +22,27 @@
91                              </a>
92                          </li>
93                      </ul>
94 +                    <h2>Course Calendar</h2>
95 +                    <table class="table table-condensed table-hover">
96 +                        <tr>
97 +                            <th>Date</th>
98 +                            <th>Day</th>
99 +                            <th>Topic</th>
100 +                        </tr>
101 +                        <tr t-foreach="lectures" t-as="lecture">
102 +                            <td>
103 +                                <span t-field="lecture.date"
104 +                                      t-field-options='{"format": "long"}'/>
105 +                            </td>
106 +                            <td>
107 +                                <span t-field="lecture.date"
108 +                                      t-field-options='{"format": "EEE"}'/>
109 +                            </td>
110 +                            <td>
111 +                                <span t-field="lecture.name"/>
112 +                            </td>
113 +                        </tr>
114 +                    </table>
115                  </div>
116              </div>
117              <div class="oe_structure"/>