2017-04-13 1 views
0

Trouvé ce code dans le code source de Rails.Que se passe-t-il dans l'application_record.rb de Rails?

<% module_namespacing do -%> 
class ApplicationRecord < ActiveRecord::Base 
    self.abstract_class = true 
end 
<% end -%> 

Vous n'avez encore rien vu de semblable. Est-ce que quelqu'un voudrait expliquer ce que fait le module_namespacing en train de faire et pourquoi cela ressemble à une instruction Rails modifiée (à cause des tirets) .erb?

+1

En regardant la définition de 'module_namespacing' dans railties/lib /rails/generators/named_base.rb, cela peut-il avoir quelque chose à voir avec la météo ou pas votre ApplicationRecord est namespaced? C'est à dire. quand vous lancez un générateur comme 'rails g shop/titre du produit: string ...' Et puis, le '<% %>' ressemble à ERB normal! Le tiret dans '-%>' supprime les espaces autour des balises erb. – Obversity

Répondre

0

Ce que vous avez regardé sont juste des générateurs. Vous pouvez en lire plus à propos de ceux-ci dans official guides.

Ceux-ci sont utilisés, bien, pour générer le code lorsque vous exécutez des générateurs :)

Vous pouvez vérifier la liste des générateurs disponibles avec

bundle exec rails generate