Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переделать код 
V
    Опции темы
Лена
Дата 20.12.2009, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 879
Регистрация: 16.8.2006

Репутация: нет
Всего: 11



У меня есть код который выстраивает список товаров в столбик:
Код

<table>
<% for product in @products -%>
  <tr>
     <td><%= image_tag(product.image_url) %></td>
     <td ><h3><%= h(product.title) %></h3><%= (truncate(product.description, 350))%>
     <%= link_to 'Подробнее >>', :action => 'new_window', :id => product %>
     </td>
  </tr>
  
  <tr>
     <td valign="top"><span class="price"><%= number_to_currency(product.price) %></span></td>
     <td>
     <% form_remote_tag :url => { :action => :add_to_cart, :id => product } do %>
      <%= submit_tag "Добавить в корзину" %><hr>
      
    <% end %></td>
  </tr>
<% end %>
 </table>


Как переделать код, чтобы был список в два стобика, а не в один. Я что-то не пойму как это реализовать
PM MAIL   Вверх
source777
Дата 20.12.2009, 19:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 12
Всего: 56



А каким образом должно образоваться 2 столбика:

1 2
3 4
5 6
7 8
.. ..

или

1 i+1
2 i+2
.. ..
i  n

???


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Лена
Дата 20.12.2009, 21:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 879
Регистрация: 16.8.2006

Репутация: нет
Всего: 11



Цитата(source777 @  20.12.2009,  19:18 Найти цитируемый пост)
А каким образом должно образоваться 2 столбика:

1 2
3 4
5 6
7 8


Мне кажется этот вариант будет наиболее лучше...
PM MAIL   Вверх
source777
Дата 20.12.2009, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 12
Всего: 56



В таком случае тебе надо будет проверять счётчик итераций на чётность, и выводить соответствующий фрагмент вёрстки.
Вёрстку для двух столбиков ты ведь уже подготовила?


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Лена
Дата 20.12.2009, 23:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 879
Регистрация: 16.8.2006

Репутация: нет
Всего: 11



Цитата(source777 @  20.12.2009,  23:18 Найти цитируемый пост)
Вёрстку для двух столбиков ты ведь уже подготовила? 


Не совсем понимаю. Мне надо создать таблицу с двумя столбиками и в зависимости от четности раставлять данные в строках этой таблицы?
PM MAIL   Вверх
source777
Дата 21.12.2009, 00:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 12
Всего: 56



Тебе надо просто определиться с вёрсткой.
Если ты хочешь выводить это в таблице, то тебе нужно будет закрывать </tr> после каждого второго продукта.

P.S. Кстати непонятно, почему у тебя сейчас 2 строчки(tr) на каждый продукт, должна быть только одна, а всё описание продукта должно помещаться внутрь ячейки(td). Ну это есть ты табличную вёрстку предпочитаешь, а не блочную.

Добавлено через 1 минуту и 40 секунд
P.P.S. В любом случае, подготовь сначала вёрстку без привязки к Ruby, просто голый HTML.


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Лена
Дата 21.12.2009, 11:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 879
Регистрация: 16.8.2006

Репутация: нет
Всего: 11



Цитата(source777 @  21.12.2009,  00:24 Найти цитируемый пост)
Кстати непонятно, почему у тебя сейчас 2 строчки(tr) на каждый продукт, должна быть только одна, а всё описание продукта должно помещаться внутрь ячейки(td). 



Не вижу ошибки. Вот добавила границу для таблицы, чтобы визульно посмотреть для тестирования. Все выглядит как и планировала (см.рис.).
Теперь думаю как переделать стуктуру этой table под два столбика.  smile 

Присоединённый файл ( Кол-во скачиваний: 9 )
Присоединённый файл  table.gif 24,66 Kb
PM MAIL   Вверх
source777
Дата 21.12.2009, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 12
Всего: 56



Цитата(Лена @  21.12.2009,  11:24 Найти цитируемый пост)
Не вижу ошибки. Вот добавила границу для таблицы, чтобы визульно посмотреть для тестирования. Все выглядит как и планировала (см.рис.).

Ну если ты так и планировала, то нужно делать таблицу внутри td. Т.к. сейчас у тебя нет никакого элемента, внутри которого содержится всё, что относится к конкретному продукту, а это уже логическая ошибка вёрстки.


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Лена
Дата 21.12.2009, 15:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 879
Регистрация: 16.8.2006

Репутация: нет
Всего: 11



Цитата(source777 @  21.12.2009,  12:38 Найти цитируемый пост)
а это уже логическая ошибка вёрстки. 



А как все таки наиболее правильно будет решить? Как примерно должен выглядеть html?
PM MAIL   Вверх
source777
Дата 21.12.2009, 15:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 12
Всего: 56



Цитата(Лена @  21.12.2009,  15:03 Найти цитируемый пост)
Как примерно должен выглядеть html? 

Ну это уже в другой раздел. 
Если бы я делал нечто подобное, то html выглядел бы примерно так:
Код

<ul class="products">
  <li>
   <!-- а сюда можно уже саму информацию о продукте, хоть таблицей, хоть как угодно -->
  </li>
  <li>
  </li>
...
  <li>
  </li>
</ul>

А остальное в CSS, например:
Код

.products li {
  float:left;
  list-style-type:none;
  width:50%;
}



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Лена
Дата 21.12.2009, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 879
Регистрация: 16.8.2006

Репутация: нет
Всего: 11



Подскажите а в этой верстке где должна быть строка перебора: <% for product in @products -%>
?
PM MAIL   Вверх
source777
Дата 21.12.2009, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 12
Всего: 56



После <ul class="products">


Код

<ul class="products">
<% for product in @products -%>
  <li><table>
  <tr>
     <td><%= image_tag(product.image_url) %></td>
     <td ><h3><%= h(product.title) %></h3><%= (truncate(product.description, 350))%>
     <%= link_to 'Подробнее >>', :action => 'new_window', :id => product %>
     </td>
  </tr>
  
  <tr>
     <td valign="top"><span class="price"><%= number_to_currency(product.price) %></span></td>
     <td>
     <% form_remote_tag :url => { :action => :add_to_cart, :id => product } do %>
      <%= submit_tag "Добавить в корзину" %><hr>
      
    <% end %></td>
  </tr>
  </table></li>
<% end %>
</ul>



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Лена
Дата 21.12.2009, 22:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 879
Регистрация: 16.8.2006

Репутация: нет
Всего: 11



Цитата(source777 @  21.12.2009,  22:23 Найти цитируемый пост)
После <ul class="products">


Упорно выстраивается на всех страницах в один столбик...
PM MAIL   Вверх
source777
Дата 21.12.2009, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 12
Всего: 56



Цитата(Лена @  21.12.2009,  22:39 Найти цитируемый пост)
Упорно выстраивается на всех страницах в один столбик... 

Используй CSS!!!



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Лена
Дата 21.12.2009, 23:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 879
Регистрация: 16.8.2006

Репутация: нет
Всего: 11



Цитата(source777 @  21.12.2009,  23:05 Найти цитируемый пост)
Используй CSS!!!


У меня не получается. Вот что вижу в Опере (рис.).
Почему-то пустые места и таблицы разной высоты. smile 

Это сообщение отредактировал(а) Лена - 21.12.2009, 23:36

Присоединённый файл ( Кол-во скачиваний: 14 )
Присоединённый файл  new_1.gif 56,79 Kb
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Ruby on Rails"
source777
  • С чего начать? начинаем
  • Документацию смотрим тут
  • Обязательно следуйте правилам Vingrad.
  • Пожалуйста, прочитайте рекомендации по работе в форуме и навигации по Vingrad.
  • Для вставки кодов Ruby используйте тег: [code=ruby]код[/code]. Когда в будущем подсветка синтаксиса для Ruby будет реализована, весь исходных код преобразится.
  • Используйтe чекбокс "Транслит" (возле кнопок кодов), если у Вас нет русских шрифтов.
  • Помните, для каждого вопроса должна быть своя тема.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, source777.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Ruby On Rails | Следующая тема »


 




[ Время генерации скрипта: 0.0791 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.