Wenn ich keine Methode Fehler passieren, haben:Diese for-Schleife ist nicht bereit,
@pet_shop = {
pets: [
{
name: "Sir Percy",
pet_type: :cat,
breed: "British Shorthair",
price: 500
},
{
name: "King Bagdemagus",
pet_type: :cat,
breed: "British Shorthair",
price: 500
}
]
}
ich eine Funktion benötigen, die das Tier zurück, wenn ich den „Namen“ geben, so habe ich:
def find_pet_by_name(pet_shop, name)
for pet in pet_shop[:pets]
if pet[:name] == name
return pet
else return nil
end
end
end
Aber das ist nicht der Test bestanden. Ich bekomme:
NoMethodError: undefined method `[]' for nil:NilClass
Das ist so eine einfache Funktion, ich weiß nicht, warum es nicht passiert.
Können Sie bitte angeben, auf welche Zeile sich dieser Fehler bezieht? Können Sie auch den Code angeben, in dem Sie 'find_pet_by_name' aufrufen? – sokkyoku