NSError *error = nil;
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
for (Brand * brand in fetchedObjects) {
return brand;
}
Этот код кажется странным.Во-первых, вы передаете NSError **, но игнорируете любую ошибку, которая может быть там возвращена.Поскольку у вас, похоже, возникают проблемы с извлечением, имеет смысл проверить это.
Во-вторых, цикл for кажется вводящим в заблуждение.Поскольку тело содержит инструкцию возврата, вы никогда не сможете выполнить цикл более одного раза.Хотя практической разницы нет, похоже, что лучшим указанием намерения здесь было бы что-то вроде:
if (fetchedObjects != nil) {
return [fetchedObjects objectAtIndex:0];
}