суббота, 2 июля 2011 г.

Re: Удаление данных с таблицы в которой нет primary key.

Book.destroy_all(:book_id => 1, :year => 1992) не помогает?

2 июля 2011 г. 21:08 пользователь Андрей Хоффманн
<hoffmann.andrey@rocketmind.ru> написал:
> Собственно есть таблица:
> book_id - cover_pic - year
>
> book_id - int
> cover_pic - varchar
> year - int
>
> Выбираю неким запросом нужные записи с БД, которые хочу удалить, что-
> то вроде:
> Book.where(:year=>1992, :book_id=>1)
>
> и надо удалить... как только не пробовал - и с delete и c destroy...
> никак...
> всегда выдает одну и туже ошибку: NoMethodError: undefined method `eq'
> for nil:NilClass
>
> причем ладно, если бы результат был nil или [] , так ведь записи есть.
>
> Как правильней всего производить-то удаление при таких условиях?
>
> Хочу отметить, что book_id не может быть primary key, потому что к
> одной книге привязаны несколько обложек и год, так что таблица вида:
>
> 1 - pic1.jpg - 1990
> 1 - pic2.jpeg - 2000
> 2 - pic6.png - 1999
> 1 - pic4.png - 2011
>
> --
> --
> Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
> FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
>
>  Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
> ror2ru@googlegroups.com
>  Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-unsubscribe@googlegroups.com
>  Дополнительные варианты находятся на странице группы http://groups.google.com/group/ror2ru?hl=ru

--
--
Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ

Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
ror2ru@googlegroups.com
Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-unsubscribe@googlegroups.com
Дополнительные варианты находятся на странице группы http://groups.google.com/group/ror2ru?hl=ru

Комментариев нет:

Отправить комментарий