2010-02-25 4 views
0

저는이 부분에 익숙하지 않습니다. Ruby에서 이것을 올바르게 표현하는 데 어려움을 겪고 있습니다. SketchUp의 Ruby API가 다른지 여부는 알 수 없습니다. 하지만, 그게 내가 그것을 사용하려고하는 것. 이Ruby에서이 문장을 구별하는 올바른 방법은 무엇입니까?

def self.initialize_job_info 
    return{ 
     'salesperson' => '' 

그것은 JOB_INFO의 빈 양식의 초기 값을 설정해야합니다 같은 코드의이 부분은 작동

을 :

def self.initialize_job_info 
    return{ 
     'salesperson' => ' = $pg_settings['salespersons'[['salesperson']['id']]] if ('on' = $pg_settings['salespersons'[['salesperson']['defsales']]])' 

는 기본적으로 내가 할 노력하고있어 것입니다 기존 값이 발견되지 않으면 [ '영업 사원']의 값을 ''로 설정하십시오.

그래서 $ pg_settings에서 전달되는 해시에 배치 할 값이 있습니다.

내가 원하는 값이며, 나는이 메이크업 감각이 특정 'ID'

$pg_settings['salespersons'] {//which is a list of 'salesperson' 
    <salesperson> id="561" name="name" phone="phone number" defsales="on" email="email" </salesperson> 

경우의 값 (defsales == "에")을 희망 한 후 '영업 사원'=> '값 = "id" '

의미가 있습니까?

나는 내 머리카락을 꺼내므로이 도움을 줄 수 있으면 도움이 될 것입니다.

+0

이해가 안 LOL ....... 나는 떨어져 긴 방법처럼

def self.initialize_job_info return{ 'salesperson' => self.default, } end def self .default salespersons = $pg_settings['salespersons'] salespersons.each do |salesperson| if (salesperson['defsales'] == 'on') return salesperson['id'] end end end 

가 보이는 작업 코드입니다. 너 정말로 무엇을하려고하는거야? – Geo

답변

0

나는 그것을 알아 냈다. 여기

0

하지 따옴표 안에 그 이름은 아마 당신은해야 그것의 값을 얻으려면 변수 경우 :

'salesperson' => " = $pg_settings[#{salespersons}[[#{salesperson}][#{id}]]] if (#{on} = $pg_settings[#{salespersons}[[#{salesperson}][#{defsales}]]])" 

을하지만, 지오 말했듯이, 실제 목적/의도에 대한 자세한 사항은

도움이 될가 당신이 문자열에 자신의 값을 포함 같이 문자열을 보간 할 경우

BTW, 그 CONSTRUC의 TIS라는 문자열 보간 (http://en.wikibooks.org/wiki/Ruby_Programming/Syntax/Literals#Interpolation)

0

은, 어쩌면이 예제는 당신을 도울 수 :

a = "a string" 
b = "this is" 
c = "#{b} #{a}" 

위의 예에서 c의 값은 this is a string입니다. 또한, 보간하는 동안 유효한 루비 코드가 허용됩니다. 그래서,이 괜찮 너무 :

c = "#{ b.sub("this","") } #{a}" 

그리고이 경우

c이 값 is a string있을 것이다. 그래서, 당신이 보간해야 할 일이 있다면, 먼저 정상적인 코드를 어떻게 사용하는지 생각한 다음, 그 주위에 #{}을 붙이십시오.

관련 문제