Es scheint, dass es sich um ein Protokoll ist eine Klasse auf diese Weise, wenn Sie einige Konstanten hinzufügen müssen, schreiben: Warum werden Konstanten in der Rubinklasse nicht empfohlen?
module AddressValidator
FIELD_NAMES = [:street, :city, :region, :postal_code, :country]
VALID_VALUE = /^[A-Za-z0-9\.\# ]+$/
class << self
...
end
end
hinzuzufügen Konstanten in der Klasse auch funktionieren, aber warum ist es nicht empfehlenswert
?class AddressValidator
FIELD_NAMES = [:street, :city, :region, :postal_code, :country]
VALID_VALUE = /^[A-Za-z0-9\.\# ]+$/
...
end
wo ist die Frage? –
Wer hat dir gesagt, dass eine solche Regel existiert? – spickermann
Ihr erstes Beispiel erstellt keine Klasse, es erstellt ein Modul. – Stefan