Проблема в том, что response.result.value
имеет необязательный тип String
. Но вы пытаетесь привести это как словарь [String: String]
здесь
if let result = response.result.value as? [String:String] {
Этот код проверяет его безопасно, но приведение явно не удается. Чтобы решить эту проблему, вам нужно проанализировать строку incode как объект json, чтобы получить данные.
Swift 4 использует Codable
для этой работы. Документация или используйте API Alamofire, который выполняет ту же работу: этот метод responseJSON
Похоже, что system_messages (на который вы ссылались) в основном делает то, что вы хотите. Модель SystemMessage
имеет поля заголовка
, сообщение
и закрытые поля
.
Чтобы отобразить изначально скрытое поле сообщения при щелчке по заголовку, потребуется немного JavaScript. Плагин уже позволяет отклонять сообщение через JavaScript, если вы используете Prototype.
Есть ли причина, по которой вы просто не используете рельсы, встроенные во вспышку? Тогда просто есть несколько js, которые скрывают флэш-сообщение при нажатии на кнопку закрытия?
В Rails уже есть система уведомлений о сообщениях, то есть flash. Когда и кому оно появляется и как оно выглядит, зависит от приложения; таким образом, маловероятно, что есть заранее написанный плагин, который делает именно то, что вы хотите.
Если бы я был вами, я бы назначил флэш-память в контроллере и создал бы div в макете, который условно появляется если есть флеш сообщение для общения. Стиль с CSS и гарнир с эффектами JavaScript.
Я использую jGrowl ( демо ), и я доволен этим. Я прочитал сегодня утром о Реве , и я тоже попробую это сделать. Если вы используете MooTools, есть также Window.Growl .
Поскольку у меня недостаточно репутации, чтобы комментировать - Flash недостаточен по нескольким причинам:
Я тоже ищу хорошее решение, и пока лучшее, что я могу придумать, - это RYO. В конечном итоге я запихну код дисплея во флеш-память, но уловка - это выяснить, что и когда мигать.