[RUBY] Bases telles que la nation de page de conception

Un aparté facile à oublier

Les variables d'instance définies dans une action de contrôleur peuvent être utilisées dans la vue pour cette action.

La valeur stockée dans la colonne à écrire est appelée valeur de propriété </ strong>.

Méthode d'assistance

Rails fournit des méthodes pour faire apparaître les balises HTML dans la vue et traiter le texte à l'avance. Celles-ci sont appelées méthodes d'assistance. simple_format Une méthode qui ajoute <br> avec un saut de ligne et enferme la chaîne de caractères dans <p> form_tag Méthode pour faire apparaître le formulaire link_to Méthode pour faire apparaître une balise Etc.

Le fichier CSS est lu à partir de stylesheet_link_tag dans la balise HTML head.

require_tree signifie lire tous les fichiers CSS sous le répertoire donné en argument par ordre alphabétique. . Est un argument et représente le répertoire courant.

application.css


require_tree .

MVC Rails traite dans l'ordre de routage → contrôleur → modèle → vue. Un système qui utilise un contrôleur de vue de modèle pour effectuer le traitement est appelé MVC, qui est un acronyme pour chacun.

Forme

Un formulaire permet à l'utilisateur de saisir des informations et d'envoyer ces informations au serveur. Il peut être créé en créant un élément de formulaire dans le code HTML et en y mettant un élément d'entrée et un élément textarea. Vous pouvez créer un formulaire avec la balise form, mais pour des raisons de sécurité, il est recommandé d'utiliser les méthodes d'assistance form_tag, form_for et form_with dans Rails.

Les valeurs saisies par l'utilisateur dans le formulaire sont contenues dans une variable appelée «params» dans le contrôleur. Considérez params comme un objet de hachage. Les informations saisies dans le formulaire dans la vue sont transmises au contrôleur en tant que paramètres avec les touches. Ce paramètre peut être obtenu en utilisant une méthode appelée «params». Comment utiliser

params[:Nom de la clé]

La valeur de l'attribut de nom dans la zone d'entrée ou de texte dans le formulaire correspond au nom de la clé.

Paramètres forts

Un paramètre fort est celui qui reçoit uniquement les paramètres avec la clé spécifiée. La sécurité peut être renforcée en empêchant la réception d'informations non autorisées. Il peut être défini en créant une méthode appelée «paramètre fort arbitraire name_params».

xxxxx.rb


private
def sample_params    ###Tout nom de paramètre fort_params
  params.permit(:Nom de la clé, :Nom de la clé)
end

Dans la méthode, écrivez params.permit et suivez le nom de clé du paramètre qui est autorisé à être reçu. La méthode permit génère un nouveau hachage avec le nom de la clé qui suit les params, qui est le hachage des informations envoyées depuis la vue, avec la valeur.

méthode privée

Si vous écrivez private dans la classe, les méthodes définies après cela ne peuvent pas être appelées depuis l'extérieur de la classe. Vous pouvez protéger les méthodes qui sont gênantes si elles sont appelées de l'extérieur, et vous n'avez pas à lire en privé et en dessous, ce qui améliore la lisibilité du code.

image_tag Dans Rails, les images telles que les logos et les bannières que vous souhaitez afficher de manière fixe sont généralement placées sous app / assets / images.

sample.html.erb


<%= image_tag 'sample.png' %>

pry-rails pry-rails est l'un des joyaux et est un outil de débogage pour Rails. En utilisant cela, vous pouvez rechercher des bogues ou arrêter le processus et vérifier si le code source est correct. La fonction que j'utilise particulièrement est "binding.pry". Vous pouvez l'utiliser pour arrêter le processus et faire la même chose que la console des rails. Écrivez binding.pry dans le code source que vous souhaitez arrêter. Vous pouvez vérifier si le processus est exécuté correctement en obtenant la valeur de la variable ou en définissant plusieurs binding.prys. Si vous voulez reprendre le processus, entrez ʻexit` dans le terminal.

sample_controller.



def create
  Sample.create(sample_params)
binding.pry
end

private
def sample_params
  params.permit(:name, :image, :text)
end

Publiez sur l'écran de publication. (new.html.erb)

Ensuite, la console sera lancée dans le terminal

Terminal.


[1] pry(#<SamplesController>)> params
=> <ActionController::Parameters {"authenticity_token"=>"DnHBKql5oQq9lARgEnK8gQiFAhnTvIVa1XH8d13u7tuVjDUGWPM1eEjVbF44iFms57+VE7+vT3SYUePDy3lwWQ==", "name"=>"aa", "image"=>"https://kumamoto.photo/archives/_data/i/upload/2019/03/13/20190313172208-2113bf9d-la.jpg ", "text"=>"dddddddd", "controller"=>"samples", "action"=>"create"} permitted: false>
[2] pry(#<SamplesController>)> params[:text]
=> "dddddddd"

Si vous entrez params sur la console, la valeur entrée sur l'écran de publication sera sortie en tant que paramètre avec le nom de la clé.

Tapez ʻexit` pour reprendre le traitement.

Chemin racine

Une URL avec uniquement le nom d'hôte sans ajouter de chemin à l'URL est appelée un chemin racine. Comment écrire dans routes.rb

routes.rb


root 'Nom du contrôleur#Nom de l'action'

méthode de commande

Une méthode pour trier les instances. Si vous avez récupéré tous les enregistrements, vous pouvez trier les enregistrements.

.order("Spécification de l'ordre des noms de colonne ")

ASC est dans l'ordre croissant, du plus ancien en termes de date DESC est dans l'ordre décroissant, à partir de la date la plus récente

Pagination

Quelque chose qui divise la page. Vous pouvez décider du nombre d'éléments à afficher par page. Il peut être implémenté en utilisant gem kaminari.

Méthode page Vous pouvez spécifier le nombre de pages avec cette méthode. Ce n'est pas le nombre total de pages, mais le nombre de pages sur lesquelles vous vous trouvez actuellement.

méthode per Vous pouvez décider du nombre d'éléments à afficher par page.

sample_controller.


@samples = Sample.order("id ASC").page(params[:page]).per(10)

Quant à l'argument de la méthode page, la clé appelée page a été ajoutée à la classe model lors de l'introduction de kaminari, et elle est décrite. La valeur de cette clé sera le numéro de page spécifié dans la vue.

fonction de connexion de devise

Un bijou qui vous permet d'implémenter facilement la fonction de connexion.

Décrivez la devise dans Gemfile Après l'installation du bundle Dans le répertoire des applications Lorsque vous appuyez sur rails g devise: install Un fichier de configuration est créé. config / initialize / devise.rb et config / locales / devise.en.yml.

Parce que je dois créer un modèle pour créer un compte Créez des fichiers connexes tels que des modèles avec rails g conçoivent le nom de la classe de modèle. Un fichier modèle et un fichier de migration sont créés. En même temps, dans routes.rb

devise_for :Forme multiple de nom de modèle

Sera ajouté. devise_for est une méthode d'aide à la conception qui génère le routage nécessaire autour de la connexion à la fois.

Des méthodes d'aide telles que current_user et user_signed_in? Sont également disponibles.

Vous pouvez créer un fichier de vue pour votre appareil avec rails g devise: views.

Prefix Une variable qui contient le chemin de routage.

sauf déclaration

Décrit le traitement à effectuer lorsque l'expression conditionnelle est fausse, ce qui est l'opposé de l'instruction if.

sauf expression conditionnelle
Traitement à exécuter en cas de faux
end

Si la branche conditionnelle est une ligne, elle peut être décrite sur une ligne.
puts "Veuillez vous connecter" unless user_signed_in?
###Si vous n'êtes pas connecté (c'est-à-dire faux)"Veuillez vous connecter"Est affiché

méthode redirect_to

Dans Rails, lorsque le traitement d'une action est terminé, il passe essentiellement à la vue portant le même nom que l'action, mais vous pouvez utiliser la méthode redirect_to pour exécuter une autre action ou passer à la vue.

redirect_to { action: :index }

Prend ʻaction: comme clé et type symbolique du nom de l'action comme valeur. Par exemple, : index`. {} Peut être omis.

méthode before_action

Vous pouvez spécifier la méthode que vous souhaitez exécuter avant l'exécution de l'action dans le contrôleur. Il peut être spécifié par le nom de méthode du type de symbole. Il existe des options ʻexcept et ʻonly, et vous pouvez limiter chaque action.

Ajouter une colonne à la table

rails g migration Ajouter le nom de la colonne Au nom de la table Nom de la colonne:Moule

Méthode configure_permitted_parameters

Lors de l'implémentation de la fonction de connexion avec appareil, la manière de recevoir les paramètres est différente de celle habituelle. Par défaut, le paramètre strong est défini pour recevoir uniquement l'adresse e-mail et le mot de passe. Utilisez la méthode configure_permitted_parameters pour l'ajouter.

application_controller.rb


before_action :configure_permitted_parameters, if: :devise_controller?

def configure_permitted_parameters
  devise_parameter_sanitizer.permit(:Nom de l'action que vous souhaitez ajouter, keys: [:Clé à ajouter])
end

application_controller.rb


class ApplicationController < ActionController::Base
#  protect_from_forgery with: :exception
 before_action :configure_permitted_parameters, if: :devise_controller?

 def configure_permitted_parameters
  devise_parameter_sanitizer.permit(:sign_up, keys: [:nickname])
 end
end

Recommended Posts

Bases telles que la nation de page de conception
[Rails] Introduction aux principes de base du dispositif