Часть вашего вопроса:
раздел 1 содержит 800 многократно используемых ячеек
blockquote>Похоже, у вас есть 800 строк в разделе 1 вместо 800 ячеек. После того, как вы отобразите табличное представление, оно создаст только те ячейки, которые могут быть отображены на экране, и будет использовать их, как только появятся новые данные.
Вам необходимо сделать следующее:
- Создать основной источник данных (скажем, массив), содержащий 800 строк. (скажем,
allRows
)- Создайте другой источник, который содержит частичные данные из
allRows
. (скажем 'fetchedRows')- Добавьте кнопку
Load More
в нижний колонтитул или в последний ряд.- При нажатии «Load More» извлекает некоторое количество строк от
allRows
доfetchedRows
. (скажем, 10 строк)- Перезагрузить представление таблицы с использованием источника данных
fetchedRows
.- Те же шаги можно выполнить и для раздела 2.
Так как HABTM является двумя путями has_many
ассоциация, Ваш подход является корректными и вложенными ресурсами, с обеих сторон будет работать просто великолепно. Кроме этого, я пересмотрел бы использование a has_many :through
ассоциация вместо HABTM, так как это более универсально.