2016-05-31 7 views
0

Wie passe ich Werte über eine Liste an? In meinem Fall habe ich eine Liste von Farben -Wie man durch Ansammlung bindet?

["Black", "Lavender", "Brazen", "Army", "Birch"] 

Ich habe diese Funktion, die eine Sammlung von Farbnamen und eine zugehörige URL erstellt:

(combine-color-imgurl get-product-images) 
=> 
[("Black" 
    "example.com/WWbNhro1n3YfmQTx1q5Piv1j8lZzse6M-25_2a353315-9965-457f-83f8-32af89f3b067.jpeg") 
("Lavender" 
    "example.com/trWCTNYNOfiA8EBX9HZcxVB1Hg8pVtr9-25_403cbe3e-9894-4ad6-9f69-dedcfd7ef77b.jpeg") 
("Brazen" 
    "example.com/COYrBHEsiOgdeOfxsQGcw8XXynsVdpxy-25_af0a9ff9-b988-467e-9b39-c4ae572420e8.jpeg") 
("Army" 
    "example.com/YWKhJXFM0dKhJuRXphCXD4TWstnZRRJm-25_b3a2e43c-3c8c-4abc-83d2-d00d9b3ed594.jpeg") 
("Birch" 
    "example.com/IRsHVjavdFsybvmpT6xjnpKqMtjyjeoZ-25_6321e4ef-5bed-463f-990a-1857151b8a11.jpeg")] 

Ich bin mir nicht ganz sicher, wie man Nur die URL in Bezug auf die Farbe.

So würde die Funktion so etwas wie

(defn get-url [color] 
    (some-operation (combine-color-imgurl get-product-images))) 

=> URL 
+2

Wenn Ihre 'combine-color-imgurl' -Funktion eine Map anstelle eines Vektors von Listen zurückgibt, wäre es trivial, die' URL' zu erhalten, sobald Sie 'color' (dh' (colors-urls color) 'where) haben 'colors-urls' ist die Map, die von' combine-color-imgurl' zurückgegeben wird. –

+0

Bekam einen Freund, um mir zu helfen - er hat genau das gemacht! –

Antwort

2

wird, wie von Juan erwähnt, war die Lösung combine-color-imgurl Rückkehr eine Karte dann

verwenden haben
(get (into {} (combine-color-imgurl get-product-images)) color) 

die URL zu erhalten.

Verwandte Themen