/ / Použite triedy ruby ​​vo Volt Framework - ruby, voltrb

Použiť triedy rubín vo Volt Framework - ruby, voltrb

Zaujímalo by ma, aký je najlepší spôsob, ako zahrnúť triedy ruby ​​do rámca Volta. Chcem použiť Trieda zásuvky zistiť IP adresu návštevníka stránok. Chcem ho použiť v ovládači, ale uvediem:

require "socket"

v hornej časti súboru nefunguje. Nejaké návrhy?

odpovede:

3 pre odpoveď č. 1

Nemyslím si, že môžete používať triedu Socket na strane klienta, pretože používa Volt OpalRb spustiť Ruby na klientovi a bohužiaľ jaNemyslite si, že Opal môže podporovať triedu Socket, pretože je ťažké to urobiť v prehliadači. Môžete však spustiť kód na strane servera a odoslať požadované výsledky klientovi. Môžete to urobiť pomocou Voltove úlohy. Môžete ich vytvoriť takto:

require "socket"

class SocketTask < Volt::Task
def use_sockets
# do your thing with sockets here...
end
end

a potom ich môžete použiť inde, napríklad v tomto ovládači:

class Controller < Volt::ModelController
def some_action
SocketTask.use_sockets

# You can also use the #then method of the returned promise to get the result of the call.
# You can even use the #fail method on the promise to get any thrown errors.
# The following can also run code on the client.

SocketTask.use_sockets.then do |result|
alert result
end.fail do |error|
puts error
end
end
end

K dispozícii je tiež dobré vysielanie obrazovky od Ricka Carlina o úlohách Volta tu.