Adds release group urls

This commit is contained in:
lionel
2013-02-06 14:07:20 +01:00
parent be1743f836
commit ac25d4cdb3
6 changed files with 11 additions and 4 deletions
+4 -1
View File
@@ -8,7 +8,10 @@ module MusicBrainz
type: (xml.attribute('type').value rescue nil),
title: (xml.xpath('./title').text rescue nil),
desc: (xml.xpath('./disambiguation').text rescue nil),
first_release_date: (xml.xpath('./first-release-date').text rescue nil)
first_release_date: (xml.xpath('./first-release-date').text rescue nil),
urls: (Hash[xml.xpath('./relation-list[@target-type="url"]/relation').map{ |xml|
[xml.attribute('type').value.downcase.split(" ").join("_").to_sym, xml.xpath('./target').text]
}] rescue {})
}
end
+1 -1
View File
@@ -9,7 +9,7 @@ module MusicBrainz
field :urls, Hash
def release_groups
@release_groups ||= client.load(:release_group, { artist: id }, {
@release_groups ||= client.load(:release_group, { artist: id, inc: [:url_rels] }, {
binding: :artist_release_groups,
create_models: :release_group,
sort: :first_release_date
+2 -1
View File
@@ -5,6 +5,7 @@ module MusicBrainz
field :title, String
field :desc, String
field :first_release_date, Date
field :urls, Hash
alias_method :disambiguation, :desc
@@ -18,7 +19,7 @@ module MusicBrainz
class << self
def find(id)
client.load(:release_group, { id: id }, {
client.load(:release_group, { id: id, inc: [:url_rels] }, {
binding: :release_group,
create_model: :release_group
})