Общий подход в веб-фреймворках заключается в отображении записей на объекты: одна запись из базы данных считывается в один объект, поэтому в результате получается массив объектов. Для разных таблиц нужны разные классы. Это один из строительных блоков для шаблона Model View Controller (MVC), используемого во многих веб-фреймворках.
Например, в Ruby on Rails таблица users
обрабатывается классом User
. Вы создаете оба с помощью эшафот.
ruby script\generate scaffold user lastname:string link:string joined:date
Дата, Булево, Строка, Текст, Десятичное число, Целое число - это различные типы данных. К сожалению, URL-адресов нет, поэтому я должен использовать строку для ссылки.
Вы можете читать пользователей из базы данных так:
@u = User.find(77) # gives you one object
@list = User.find(:all) # gives you an array of User-objects
атрибут объекта пользователя имеет правильные типы для работы с датами, числами и т. Д .:
если 100.days.ago <@ u.joined затем .... </p>
Логика, присущая данным, реализована в классе User.
Список пользователей может отображаться в формате HTML с использованием следующего вида:
<h1>Listing Users</h1>
<table>
<tr>
<th>Lastname</th>
<th>Link</th>
<th>Joined on</th>
</tr>
<% @list.each do |user| %>
<tr>
<td><%=h user.lastname %></td>
<td><%= link_to "Homepage", user.link %></td>
<td><%=h user.joined %></td>
</tr>
<% end %>
</table>
Логика, свойственная отображению данных, реализована в представлениях.
Информация о том, какой атрибут объекта следует рассматривать как ссылку или обычный текст, находится в представлении, а не в самом объекте.
Отображение / вывод тех же данных, что и в cvs, осуществляется путем создания cvs-view.