Фу, наконец, поставил диагноз. Как-то , оскорбительный файл Swift EditTaskPopoverController.swift
был в двух разных фазах сборки.
Он был в Compile Sources
правильно, со всеми другими файлами Swift, но это был также , по какой-то очень странной причине, в фазе Copy Bundle Resources
, а также со всеми моими ресурсами XIB и изображения.
Я понятия не имею, как он туда попал, но удалив его с дополнительной фазы сборки решена проблема.
Да, можно жить без ПОМЕЩЕННОГО и УДАЛИТЬ.
Эта статья говорит Вам почему: http://www.artima.com/lejava/articles/why_put_and_delete.html
, В то время как к истинному RESTafrians это может быть ересью в реальном мире, Вы делаете то, что Вы можете, с тем, что Вы имеете. Будьте так рациональны, как Вы можете и столь согласовывающийся с Вашей собственной конвенцией, как Вы можете, но можно определенно создать хорошую УСПОКОИТЕЛЬНУЮ систему без P и D.
rp
Можно также использовать X-Http-Verb-Override:DELETE inst. HTTP, УДАЛЯЮТ. Это также полезно для клиентов Silverlight, которые наклоняются, изменяют глаголы HTTP и только поддерживают, ДОБИРАЮТСЯ и POST...
Если Вы просто используете, ДОБИРАЮТСЯ и POST, это все еще УСПОКОИТЕЛЬНО. Ваш веб-сервис может только сделать вещи, которые только потребовали, ДОБИРАЮТСЯ или POST, таким образом, это прекрасно.
Сегодняшние веб-браузеры только обрабатывают, ДОБИРАЕТСЯ + СООБЩЕНИЯ. В направляющих, например, ПОМЕЩАЕТ +, УДАЛЯЕТ, "фальсифицируются" через скрытые поля формы.
, Если Ваша платформа не имеет некоторое обходное решение для "поддерживания", ПОМЕЩАЕТ +, УДАЛЯЕТ, не волнуйтесь о них на данный момент.
REST позволяет нарушить соглашение о протоколе, если реализации протокола нарушены (так что единственные нестандартные действия, которые вы делаете, - это обход сломанных частей реализации). Таким образом, в REST можно использовать какой-либо другой метод для представления обычно неподдерживаемых глаголов, таких как DELETE или PUT.
edit: Вот цитата из Филдинга, который создал и определил REST:
REST API не должен содержать никаких изменений в протоколах связи, кроме заполнения или исправления деталей недоопределенных битов стандартных протоколов, таких как метод HTTP PATCH или поле заголовка ссылки. Обходные пути для неработающих реализаций (таких как те браузеры, которые достаточно глупы, чтобы полагать, что HTML определяет набор методов HTTP) должны быть определены отдельно или, по крайней мере, в приложениях, с ожиданием, что обходной путь в конечном итоге устареет. [Ошибка здесь означает, что интерфейсы ресурсов являются объектно-ориентированными, а не общими.]