[RUBY-ON-RAILS] 지도 무엇을 않습니다 (: name)이 루비 코드에서 무엇입니까?
RUBY-ON-RAILS지도 무엇을 않습니다 (: name)이 루비 코드에서 무엇입니까?
조금 더 나은 루비를 이해하려고 노력, 나는 인터넷을 서핑이 코드로 실행 :
require 'rubygems'
require 'activeresource'
ActiveResource::Base.logger = Logger.new("#{File.dirname(__FILE__)}/events.log")
class Event < ActiveResource::Base
self.site = "http://localhost:3000"
end
events = Event.find(:all)
puts events.map(&:name)
e = Event.find(1)
e.price = 20.00
e.save
e = Event.create(:name => "Shortest event evar!",
:starts_at => 1.second.ago,
:capacity => 25,
:price => 10.00)
e.destroy
작업 : events.map (이름 &)를 어떻게하는지 내가 특히 관심있어인가? 나는 이벤트가 배열 것을 볼, 따라서 그것의지도 메소드를 호출합니다. 이제 내 질문은, 어디 블록이 생성 맵에 전달되는 것입니다인가? 이러한 맥락에서 이름 : 기호는 무엇인가? 나는 그것이 어떻게 작동하는지 이해하기 위해 노력하고있어.
해결법
-
==============================
1.
events.map(&:name)
정확히 동일합니다
events.map{|x| x.name}
그냥 편리 문법 설탕입니다.
자세한 내용은 여기에 기호 # to_proc 방법을 확인하십시오. 여기서, : 이름이 발동으로 강제되고있다.
그런데,이 여기 자주 온다 - 그것은 구글하거나 '앰퍼샌드와 콜론 것은':)를 검색 단지 매우 어렵다.
from https://stackoverflow.com/questions/2388337/what-does-mapname-do-in-this-ruby-code by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] 왜 문자열 # GSUB 이중 컨텐츠를합니까? (0) | 2020.02.10 |
---|---|
[RUBY-ON-RAILS] 어떻게 첫 번째 모델에 속하는 다른 모델의 특성을 기반으로 모델을 쿼리하는? (0) | 2020.02.10 |
[RUBY-ON-RAILS] 어떻게 루비 / 말대꾸 내부 변수를 레일 사용할 수 있습니까? (0) | 2020.02.10 |
[RUBY-ON-RAILS] 루비 레일의 인스턴스 변수 대 심볼 (form_for) (0) | 2020.02.10 |
[RUBY-ON-RAILS] 레일에서 attr_accessor의 사용 (0) | 2020.02.10 |