Spec-Zone.ru › Ruby on Rails 4.2

класс ActionDispatch::Flash::FlashHash

Родитель:
Объект
Включенные модули:
Enumerable

Открытые методы экземпляра

[](k) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 123
def [](k)
  @flashes[k.to_s]
end
[]=(k, v) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 117
def []=(k, v)
  k = k.to_s
  @discard.delete k
  @flashes[k] = v
end
alert() Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 224
def alert
  self[:alert]
end

Удобный доступ к flash[:alert].

alert=(message) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 229
def alert=(message)
  self[:alert] = message
end

Удобный доступ к flash[:alert]=.

clear() Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 156
def clear
  @discard.clear
  @flashes.clear
end
delete(key) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 141
def delete(key)
  key = key.to_s
  @discard.delete key
  @flashes.delete key
  self
end
discard(k = nil) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 209
def discard(k = nil)
  k = k.to_s if k
  @discard.merge Array(k || keys)
  k ? self[k] : self
end

Помечает весь флеш или отдельную запись флеша для удаления к концу текущего действия:

flash.discard              # discard the entire flash at the end of the current action
flash.discard(:warning)    # discard only the "warning" entry at the end of the current action
each(&block) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 161
def each(&block)
  @flashes.each(&block)
end
empty?() Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 152
def empty?
  @flashes.empty?
end
initialize_copy(other) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 109
def initialize_copy(other)
  if other.now_is_loaded?
    @now = other.now.dup
    @now.flash = self
  end
  super
end
Вызов метода суперкласса
keep(k = nil) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 199
def keep(k = nil)
  k = k.to_s if k
  @discard.subtract Array(k || keys)
  k ? self[k] : self
end

Удерживает весь текущий флеш или определённую запись флеша доступными для следующего действия:

flash.keep            # keeps the entire flash
flash.keep(:notice)   # keeps only the "notice" entry, the rest of the flash is discarded
key?(name) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 137
def key?(name)
  @flashes.key? name.to_s
end
keys() Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 133
def keys
  @flashes.keys
end
notice() Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 234
def notice
  self[:notice]
end

Удобный доступ к flash[:notice].

notice=(message) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 239
def notice=(message)
  self[:notice] = message
end

Удобный доступ к flash[:notice]=.

now() Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 191
def now
  @now ||= FlashNow.new(self)
end

Устанавливает флеш, который не будет доступен следующему действию, только текущему.

flash.now[:message] = "Hello current action"

Этот метод позволяет использовать флеш в качестве централизованной системы сообщений в приложении. Когда вам нужно передать объект следующему действию, вы используете стандартное назначение флеша ([]=). Когда вам нужно передать объект текущему действию, вы используете now, и ваш объект исчезнет, когда текущее действие завершится.

Записи, установленные через now доступны так же, как и стандартные записи: flash['my-key'].

Также, предоставляет два удобных метода доступа:

flash.now.alert = "Beware now!"
# Equivalent to flash.now[:alert] = "Beware now!"

flash.now.notice = "Good luck now!"
# Equivalent to flash.now[:notice] = "Good luck now!"
to_hash() Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 148
def to_hash
  @flashes.dup
end

Защищённые методы экземпляра

now_is_loaded?() Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 244
def now_is_loaded?
  @now
end
stringify_array(array) Показать исходный код
# File actionpack/lib/action_dispatch/middleware/flash.rb, line 248
def stringify_array(array)
  array.map do |item|
    item.kind_of?(Symbol) ? item.to_s : item
  end
end

© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API