Comments 27
Спасибо.
Жду продолжения про has_many, has_and_belongs :)
А отдельно от Рельсов в ActiveRecord можно использовать миграции? (хотя это скорее к rake относится)
Жду продолжения про has_many, has_and_belongs :)
А отдельно от Рельсов в ActiveRecord можно использовать миграции? (хотя это скорее к rake относится)
+1
UFO just landed and posted this here
Вообще вся серия супер!!! Очень последовательно. Надеюсь в последствии получится большой учебник, в котором получится отразить полностью создание web-приложения. И главное про цикл разработки написать отдельную статью. Мне кажется это важно.
0
Спасибо за труд. Статья хорошая, но, честно говоря, совершенно неинтересная. Все, что вы рассказали — это общие места, которые разжеваны в десятках книг/статей/туториалов. Заметка концептуально не вписывается в ваш цикл. Ведь Ruby это не только Рельсы и непонятно при чем здесь ActiveRecord. Хотелось бы все-таки увидеть больше материалов именно по языку, RoR в рунете и так хорошо освещен. Есть же много интересных тем: применение Ruby вне веба, всякие тонкости и неочевидные вещи. Вот например интересная заметка о блоках, лямбдах и процедурных объектах — www.robertsosinski.com/2008/12/21/understanding-ruby-blocks-procs-and-lambdas Уверен, что изложенный там материал понятен далеко не всем. Такие статьи сложнее писать, но и пользы от них несоизмеримо больше, чем от очередного введения в AC.
Ну это так, фидбэк от читателей, не воспринимайте мои слова в штыки.
Ну это так, фидбэк от читателей, не воспринимайте мои слова в штыки.
0
result1 = Account.find(1)
acc2.save
save тут явно лишний.
Простенько так, самые азы.
acc2.save
save тут явно лишний.
Простенько так, самые азы.
0
> account1 = Account.find(1)
> account1.password = «newpass»
> account1.save
Вы считаете, что эффективно перед выполнением UPDATE делать лишний SELECT? И вообще, что хорошего в ActiveRecord, нагенерирована куча методов (вроде find_by_*, и тд), большинство из которых так нигде и не используется. В чем смысл?
И еще, вопросик: а что, если надо найти записи по какому-то условию, например, все юзеры, зарегистрированные до такого-то числа, и принадлежащие к определенной группе? А если надо выбрать список групп и количество пользователей в каждой? Сомневаюсь, что для этого найдется готовый метод.
> account1.password = «newpass»
> account1.save
Вы считаете, что эффективно перед выполнением UPDATE делать лишний SELECT? И вообще, что хорошего в ActiveRecord, нагенерирована куча методов (вроде find_by_*, и тд), большинство из которых так нигде и не используется. В чем смысл?
И еще, вопросик: а что, если надо найти записи по какому-то условию, например, все юзеры, зарегистрированные до такого-то числа, и принадлежащие к определенной группе? А если надо выбрать список групп и количество пользователей в каждой? Сомневаюсь, что для этого найдется готовый метод.
0
Действительно неэффективно. Для этого есть метод update:
А насчет условий — об этом мы еще поговорим. Готовых, конечно, не найдется
Account.update(1, {:password => 'newpass'})
А насчет условий — об этом мы еще поговорим. Готовых, конечно, не найдется
0
UFO just landed and posted this here
методы типа find_by_* заранее не генерятся. ActiveRecord отлавливает ошибку метод не наден, переопределяя method_missing. Затем объявляет этот метод и выполняет.
+1
> нагенерирована куча методов (вроде find_by_*, и тд), большинство из которых так нигде и не используется. В чем смысл?
Смысл — в усилении абстракции, приближении к более человеческому языку. На самом деле, внутри этих методов будет все тот же вызов find(..., conditions => [...]) (если более точно — find_every(...)), так что, find_by_* — всего лишь синтаксический сахар. При этом первый вызов будет медленней последующих, т.к. метод будет динамически создан по method_missing при первом вызове find_by_*.
Смысл — в усилении абстракции, приближении к более человеческому языку. На самом деле, внутри этих методов будет все тот же вызов find(..., conditions => [...]) (если более точно — find_every(...)), так что, find_by_* — всего лишь синтаксический сахар. При этом первый вызов будет медленней последующих, т.к. метод будет динамически создан по method_missing при первом вызове find_by_*.
0
Я так полагаю, что и в AR STI реализован на varchar стыках?
0
Интересно. Первая действительно понятная статья на эту тему, а то книжки какие-то тупые пошли...)
0
Поставь пожалуйсто в методах скобочки acc1.save(), дико раздражает этот языковой беспредел, позволяющий вызывать метод как атрибут.
Ещё бы про схемы yaml рассказал.
Ещё бы про схемы yaml рассказал.
0
> Поставь пожалуйсто в методах скобочки acc1.save(), дико раздражает этот языковой беспредел, позволяющий вызывать метод как атрибут.
Дело привычки/непривычки. А методы без скобок, наоборот — одна из возможностей приблизить язык к более человеческому-описательному. Например, «before_filter :a» или «attr_accessor :a, :b», или belongs_to :some_table — мы, как бы, описываем, а не «вызываем» методы (хотя на самом деле — это вызов метода).
Дело привычки/непривычки. А методы без скобок, наоборот — одна из возможностей приблизить язык к более человеческому-описательному. Например, «before_filter :a» или «attr_accessor :a, :b», или belongs_to :some_table — мы, как бы, описываем, а не «вызываем» методы (хотя на самом деле — это вызов метода).
0
Вот я имею полное право обьективно откомментить и оценить этот блог, так как только 2 недели назад познакомился с ruby в частности и с программированием в целом. И, честно говоря, я запнулся уже капле на 3 или 4. Хотя, наверное, опытным в программировании людям все понятно интуитивно.
-1
Sign up to leave a comment.
Покорим Ruby вместе! Капля тринадцатая