Ruby:
Praca z YAML

Jak to zrobić:

Ruby posiada wbudowaną bibliotekę o nazwie Psych do parsowania i emitowania YAML. Aby jej użyć, najpierw musisz zażądać standardowej biblioteki YAML. Oto podstawowy przykład, który pozwoli Ci zacząć:

require 'yaml'

# Hash do serializacji
person = { name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"] }

# Konwersja hasha na YAML
yaml_data = person.to_yaml

puts yaml_data

Przykładowe Wyjście:

---
:name: John Doe
:age: 30
:skills:
- Ruby
- JavaScript

Aby wczytać dane YAML z powrotem do obiektu Ruby:

loaded_person = YAML.load(yaml_data)

puts loaded_person

Przykładowe Wyjście:

{name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"]}

Używanie Bibliotek Stron Trzecich:

Chociaż standardowa biblioteka wystarcza do podstawowych zadań, dla bardziej skomplikowanych potrzeb możesz zainteresować się gemami stron trzecich, takimi jak ‘safe_yaml’. Aby użyć takich bibliotek, musisz najpierw zainstalować gema:

gem install safe_yaml

Następnie, możesz go używać do bezpiecznego wczytywania danych YAML, minimalizując ryzyka, takie jak instancjonowanie obiektów z kontrolowanych przez użytkownika źródeł:

require 'safe_yaml'

safe_loaded_person = SafeYAML.load(yaml_data)

puts safe_loaded_person

Przykładowe Wyjście:

{name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"]}

To podejście zwiększa bezpieczeństwo obsługi YAML, czyniąc je dobrą opcją dla aplikacji wczytujących YAML z niezaufanych źródeł.