#web2py
#web2py
Вопрос:
Я действительно не понимаю, почему это имя таблицы.TABLEFIELD отображается, когда u выполняет цикл по таблице, как это работает? и, самое главное, могу ли я сделать так, чтобы он не отображался?
Пример :
cars.car <—-tableNAME.tableId
szxcz <—-первая строка
asdasdas
zfsdfsdf
fsdsdewewe
wrythfghfghfg <—-последняя строка
Любое объяснение поможет…
Когда вы пытаетесь отобразить SQLTABLE через представление, вы получаете имя таблицы и идентификатор таблицы в «заголовке».
Пример :
Контроллер :
def index():
something = db(db.database_table.database_id).select()
return dict(something=something)
Представление :
{{extend 'layout.html'}}
<p>Table</p>
{{=something}}
И отображение будет выглядеть следующим образом :
cars.car <----tableNAME.tableID<br />
szxcz <----first row<br />
asdasdas<br />
zfsdfsdf<br />
fsdsdewewe<br />
wrythfghfghfg <----last row<br />
В любом случае, мне это нравится: SQLTABLE(…, headers = None) или в приведенном выше примере something=SQLTABLE(…., headers = None)
Комментарии:
1. Я не понимаю, что вы подразумеваете под «циклическим перебором таблицы». Пожалуйста, отправьте код, показывающий, где и как вы просматриваете таблицу.
Ответ №1:
Когда вы делаете это, {{=somthing}}, вы используете значение по умолчанию для отображения таблицы, содержащейся в ‘something’. По умолчанию имена полей отображаются в верхней части таблицы.
Если вы этого не хотите, вам нужно заменить отображение по умолчанию в представлении и явно отобразить части таблицы, которые вы хотите видеть.
Что-то вроде этого:
<table>
{{for row in something:}}
<tr>
<td>>
{{=row.nameoffield1}}
</td><td>
{{=row.nameoffield2}}
</td>
...
</tr>
{{pass}}
</table>