Я новичок в мире Ruby и Ruby on Rails. Я прочитал несколько руководств, но у меня есть некоторые проблемы со следующим синтаксисом.
Я думаю, что использование синтаксиса :condition
используется в Ruby для определения атрибута класса с каким-либо аксессором, например:
class Sample
attr_accessor :condition
end
, который неявно объявляет метод получения и установки для свойства "условие".
Пока я просматривал пример кода на Rails, я нашел следующие примеры, которые я не совсем понимаю.
Например:
@post = Post.find(params[:id])
Почему он обращается к атрибуту id
с помощью этого синтаксиса, а не:
@post = Post.find(params[id])
Или, например:
@posts = Post.find(:all)
Является ли :all
константой здесь? Если нет, что на самом деле означает этот код? Если да, то почему не используется следующее:
@posts = Post.find(ALL)
Спасибо