[RUBY] Résumé du travail initial lors de la création d'une application avec Rails

introduction

Puisqu'il peut être défini comme à chaque fois lors de la création d'une application avec des rails, je vais résumer les paramètres initiaux. Le travail est le suivant.

・ Création d'applications ・ Création de base de données ・ Introduction de gemme ・ Présentation de Haml ・ Créer une table ・ Création de contrôleur et de vue ・ Introduction de jquery

Création d'applications

Tout d'abord, créez une application en entrant des commandes depuis le terminal.

Je pense que c'est une bonne idée de spécifier la version des rails que vous connaissez. (Cette fois, la version 5.2.3, la base de données utilise myspl) Dans le répertoire dans lequel vous souhaitez enregistrer votre application, procédez comme suit: (Cette fois, le nom de l'application est un exemple)

Terminal


$ rails _5.2.3_ new sample -d mysql

Accédez au répertoire de l'application créée.

Terminal


$ cd sample

Création de base de données

Créez une base de données.

Terminal


$ rails db:create

Une base de données pour le développement et les tests doit être créée. (Vérifiez avec une application telle que Sequel Pro)

introduction de gemme

Mettez d'abord la gemme que vous pensez utiliser pour le développement. Je pense que les quatre suivants peuvent être inclus pour le moment. Ajoutez ce qui suit à votre Gemfile.

Gemfile


group :development, :test do
  gem 'pry-rails'
end

gem 'haml-rails'
gem 'font-awesome-sass'
gem 'jquery-rails'

Je vais expliquer chacun pry-rails: pour arrêter le traitement sur le contrôleur et vérifier le contenu des paramètres haml: Parce que haml est utilisé (plus facile à écrire que erb) font-awesome-sass: pour utiliser l'icône font-awesome jquery-rails: pour utiliser jquery

Installer après avoir ajouté

Terminal


$ bundle install

Introduction de Haml

J'ai ajouté haml à gem, mais je vais changer le fichier erb qui a été créé à l'origine lors de la création de l'application en haml. Exécutez simplement la commande suivante:

Terminal


$ rails haml:erb2haml

L'exécution de la commande convertira le fichier erb existant en fichier haml. Après avoir exécuté la commande, il vous sera demandé Voulez-vous supprimer les fichiers .erb d'origine?, Alors entrez y. (La question est, est-ce que je peux supprimer le fichier erb d'origine? Répondons par bon → y, non → n)

Créer une table

Créez une table dans la base de données. Cette fois, je vais créer une table de messages. (Je pense que ce sera après la conception de la base de données lors de la création d'une application, mais veuillez penser que c'est pour une confirmation facile du flux)

■ Commencez par créer un modèle.

Terminal


$ rails g model post

Un fichier de migration et un fichier de modèle doivent être créés comme indiqué dans l'image ci-dessous. 6b09d101921453a7b9b21fad5bec9fe1.png

■ Modifiez ensuite le fichier de migration. Décrit les informations de la colonne à créer. Cette fois, le nom de la colonne est content, le type de données est string et il existe une restriction nulle. Ajoutons-le au fichier de migration! (Le fichier de migration est dans db / migrate)

xxxxxxxxxxxxxx_create_posts.rb


class CreatePosts < ActiveRecord::Migration[5.2]
  def change
    create_table :posts do |t|
      t.string :content, null: false
      t.timestamps
    end
  end
end

■ Effectuons la migration Migrez après avoir écrit le fichier de migration.

Terminal


$ rails db:migrate

C'est OK si la table est créée comme indiqué dans l'image ci-dessous. f719a52b32f13a6df5d62f5569dd5d00.png

Contrôleur, création de vues

■ Commencez par créer un contrôleur. (Sans cela, cela ne deviendra pas une application ...) Cette fois, nous allons créer un contrôleur de messages.

Terminal


$ rails g controller posts

Je pense que divers fichiers seront créés lorsque vous exécuterez la commande, mais pour le moment, c'est OK si vous ne faites attention qu'à posts_controller.rb. (Un dossier de vue pour le contrôleur de messages est également créé ici) 9be2237cae0ffacc53580744ec6464be.png

■ Édition du contrôleur Écrivez l'action sur le contrôleur. (Le fichier est dans l'application / les contrôleurs)

posts_controller.rb


class PostsController < ApplicationController
  def index
  end
end

Pour le moment, seule l'action d'index est décrite. Cette fois, je vais omettre la description du contenu comme les variables d'instance.

■ Paramètres de routage Ensuite, définissons le routage pour utiliser le contrôleur. (Le fichier est en configuration)

routes.rb


Rails.application.routes.draw do
  root "posts#index"
  resources :posts, only: :index
end

L'action d'index du contrôleur de postes peut être utilisée. Modifiez également le chemin racine. (Sans cela, la page par défaut préparée par les rails sera affichée lors de l'accès au chemin racine.)

■ Confirmation d'acheminement Vérifions si le routage est correctement défini

Terminal


$ rails routes

C'est OK si l'action d'index du contrôleur de postes est définie comme indiqué dans l'image ci-dessous. e901ca940d1239356297f31fbf5a6ea5.png

■ Afficher la création de fichiers Après avoir défini le routage, préparez le fichier de vue. (Sans cela, même si vous ignorez la demande, vous obtiendrez une erreur car il n'y a pas de fichier)

Créez index.html.haml dans app / views / posts. Écrivons quelque chose pour que le contenu soit facile à comprendre.

haml:index.html.haml


%page d'index h1

■ Vérifiez avec un navigateur Après avoir créé le fichier de vue, vérifions réellement avec le navigateur s'il fonctionne. Démarrez un serveur local.

Terminal


$ rails s

Entrez localhost: 3000 / dans l'URL avec un navigateur tel que Chrome pour y accéder. C'est OK s'il est affiché selon le fichier de vue préparé comme indiqué dans l'image ci-dessous.

1f78058672dcf3d9d948b9cffe64c8be.png

Introduction de jquery

Nous allons introduire jquery. Ajoutons require jquery à application.js.

application.js


//= require jquery
//= require rails-ujs
//= require activestorage
//= require_tree .

--- De côté --- À propos, lors de l'ajout manuel d'Ajax à l'aide de jquery, cela peut interférer avec les turbolinks, donc dans mon cas, j'ai supprimé les turbolinks. Commentez la description des turbolinks dans Gemfile Suppression de la description des turbolinks dans le fichier application.html Suppression de la description des turbolinks dans le fichier application.js

Enfin, vérifions si jquery fonctionne correctement dans le navigateur. Tout va bien, alors écrivez ce qui suit dans le fichier js et jetez un œil à la console du navigateur! Vous pouvez vérifier l'écran de la console à l'aide de l'outil de vérification Chrome. (Cette fois, c'est pour confirmation, alors écrivez-le dans application.js)

application.js


$(function(){
  console.log("OK")
})

Si OK est affiché comme indiqué dans l'image ci-dessous, cela fonctionne correctement. 5d3352fcaeb81a05709680d955d6dccc.png

C'est la fin de tout le travail lors de la création d'une application. Je vous serais reconnaissant si vous pouviez signaler des erreurs.

Recommended Posts

Résumé du travail initial lors de la création d'une application avec Rails
Sortie verbalisée de procédure approximative lors de la création d'une application avec Rails
Comment spécifier la base de données lors de la création d'une application avec des rails
Rétrograder une application existante créée avec les rails 5.2.4 vers 5.1.6
Remarque: feuille de calcul lors de la création de l'application Rails Vue
Comment pousser une application développée avec Rails vers Github
[Rails] Configuration initiale de la connexion créée par l'utilisateur avec devise, devise_token_auth
Après avoir installé le gemfile'devise''bootstrap 'avec des rails, que faire lorsque l'url est une erreur
Création d'un site EC avec Rails5 ①-Configuration de l'application, préparation de divers gemmes, création de modèle / routage-
Je veux pousser une application créée avec Rails 6 vers GitHub
Faites attention au moment d'initialisation lors de l'utilisation de MessageEncryptor avec Rails 5.2 / 6.0
L'histoire du refactoring avec un assistant personnel pour la première fois dans une application Rails
Règles de dénomination lors de la création de nouveaux contrôleurs et modèles avec rails
N'ajoutez pas inutilement @GeneratedValue lors de la création d'une entité avec JPA
Résumé des problèmes et des contre-mesures lors de l'utilisation d'IE avec WebDriver de Selenium2
[Débutant] Lorsque les rails ne fonctionnent pas
Créez une application avec Spring Boot 2
[JVM] Résumé en cas de trébuchement avec jstat
[Rails] Résumé de la configuration de routage compliquée
À propos de la création d'applications avec Springboot
Créer une application de minuterie avec de la boue
Résumé de l'état initial du contrôleur de l'appareil
[Rails] Création initiale des données avec seed
Créez une application avec Spring Boot
Précautions lors de la création de PostgreSQL avec docker-compose
Suivre les erreurs de l'application Rails avec Sentry
[Rails] Entrée de données initiale avec seed_fu!
Résumé des moyens lorsque vous souhaitez communiquer avec HTTP sur Android
Créez une application de résumé de nouvelles techniques de style LINEnews avec Rails x LineBot! [Partie 1]
Une collection de méthodes souvent utilisées lors de la manipulation du temps avec TimeWithZone of Rails
[Pour les débutants Rails] Résumé de l'utilisation de RSpec (obtenir un aperçu)
[Mémo personnel] Résumé des obstacles lors du déploiement des applications Rails sur AWS
[Ruby on Rails] Introduction des données initiales
[Ruby on Rails] Création d'un formulaire de demande
[Rails6] Créer une nouvelle application avec Rails [Débutant]
Présentation de Vue.js à une application Rails existante
Erreur lors de la création de l'infrastructure avec l'application AWS
Rails Bases de la création d'une nouvelle application
[Rails 5] Créer une nouvelle application avec Rails [Débutant]
[AWS] Publier l'application Rails avec nginx + puma
Faisons un écran d'erreur avec Rails
Introduction de Vuetify aux applications Rails existantes
Rails6 Je veux créer un tableau de valeurs avec une case à cocher