Задать вопрос
mclander
@mclander

Цикл и значение по ссылке?

Я догадываюсь, что так делать нельзя, но не понимаю как можно — задача считать с базы несколько записей и отдать их рендеру presto. Поправьте меня пожалуйста.


Использовать объектный доступ я пока не хочу — задачка слишком простая. простите если вопрос тупой — руби только начал изучать.

@entries =[]
		$dbh.select_all('select * from test order by test_id desc')  do |row| 			
			p row 
			@entries.push(row)
		end
		p @entries
		p $dbh.select_all('select * from test order by test_id desc') 
		view.render



Вот что выводит в отладку (p) (когда выводится переменная цикла — всё ок, дльше явно идёт замещение по ссылке):

[3, "\u0420\u0430\u043C\u0443"]
[2, "\u041C\u044B\u043B\u0430"]
[1, "\u041C\u0430\u043C\u0430"]

[[1, "\u041C\u0430\u043C\u0430"], [1, "\u041C\u0430\u043C\u0430"], [1, "\u041C\u0430\u043C\u0430"]]

[[1, "\u041C\u0430\u043C\u0430"], [1, "\u041C\u0430\u043C\u0430"], [1, "\u041C\u0430\u043C\u0430"]]



PS. Таки пошёл копать active_record… Вроде всё хорошо, но… Люди добрые, кто знает как ей подсунуть имя таблицы без s на конце? Два года отучал себя именовать таблицы в множественном числе, отучил… и теперь что делать? ;)
  • Вопрос задан
  • 2425 просмотров
Подписаться 2 Оценить 1 комментарий
Решения вопроса 1
int03e
@int03e
stackoverflow.com/questions/8972379/ruby-dbi-select-all-vs-execute-fetch-each-finish тут разбирается похожая проблема. Но советую плюнуть на DBI и подключить ORM (если AR это оверхед, тогда Sequel). Оно того стоит.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы