[RUBY] [Active Admin] rails g active_admin: Créer un écran de gestion de modèle par nom de modèle de ressource

Ravi de vous rencontrer. Je suis Yori-Goreng, qui continue d'étudier Ruby and Rails dans une école de programmation en ligne: détendu: Cette fois, je présenterai une partie de la création d'écran de gestion à l'aide d'ActiveAdmin: sunny :: sunny:

environnement

Qu'est-ce qu'ActiveAdmin?

ActiveAdmin est un joyau qui crée un écran d'administration dans Ruby on Rails. ** À partir de l'écran de gestion, vous pouvez facilement créer, mettre à jour et supprimer des données. ** ** C'est tellement pratique que vous ne pouvez pas vous en passer: détendu:

Citation de description: Active Admin est un plugin Ruby on Rails pour générer des interfaces de style d'administration.

Procédure d'installation d'ActiveAdmin

--Ajoutez les gemmes ʻactiveadmin et deviseau Gemfile et installez la gemme avecbundle install`.

gem 'activeadmin'
gem 'devise'
 ===============================================================================

Some setup you must do manually if you haven't yet:

  1.Ensure you have defined default url options in your environments files. Here
     is an example of default_url_options appropriate for a development environment
     in config/environments/development.rb:

       config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }

     In production, :host should be set to the actual host of your application.

  2. Ensure you have defined root_url to *something* in your config/routes.rb.
     For example:

       root to: "home#index"

  3. Ensure you have flash messages in app/views/layouts/application.html.erb.
     For example:

       <p class="notice"><%= notice %></p>
       <p class="alert"><%= alert %></p>

  4.You can copy Devise views (for customization) to your app by running:

       rails g devise:views

===============================================================================

--Créez un modèle à gérer sur l'écran de gestion par rails g model model name. Par exemple, exécutez rails g model text.

--Modifiez le fichier de migration créé en même temps que le modèle et ajoutez les colonnes requises.

db/migrate/20200605042220_create_texts.rb


class CreateTexts < ActiveRecord::Migration[5.2]
  def change
    create_table :texts do |t|
   #Cette fois, titre,Ajoutons deux colonnes appelées content.
      t.string :title
      t.text  :content
      t.timestamps
    end
  end
end

--Migrer avec rails db: migrate.

--Injectez les données initiales de l'utilisateur dans la base de données avec rails db: seed.

--Démarrez le serveur avec rails s.

スクリーンショット 2020-06-05 12.55.46.png

--Connectez-vous avec l'ID et le mot de passe suivants

UserID: [email protected]
Password: password
スクリーンショット 2020-06-05 17.34.24.png

rails g active_admin: nom du modèle de ressource

Cette commande crée un menu de gestion pour le modèle spécifié par le nom du modèle.

Cette fois, je veux ajouter le menu de gestion du modèle de texte créé précédemment, alors exécutez rails g active_admin: resource text.

Cela créera textes.rb dans app / admin et ajoutera un menu Textes à l'écran d'administration. À partir de cet écran, vous pouvez mettre à jour les données du modèle. スクリーンショット 2020-06-05 13.57.33.png

À propos, il semble que les données ne puissent pas être mises à jour sans ajouter permit_params: nom de colonne à textes.rb.

app/admin/texts.rb


ActiveAdmin.register Text do
  permit_params :title, :content  
end

J'essaierai d'ajouter des données. Lancez la console avec rails c et exécutez l'action de création ⇒ nom de modèle.create (nom de colonne:" valeur de colonne ")

rails c
Text.create(title: "1", content: "hogehoge")

Il a été ajouté en toute sécurité. Vous pouvez facilement modifier les données avec Afficher, Modifier, Supprimer sur le côté droit de l'écran. スクリーンショット 2020-06-05 18.02.07.png

À la fin

ActiveAdmin a de nombreuses autres fonctionnalités, alors consultez le site officiel et d'autres articles Qiita pour en savoir plus: ensoleillé:

Recommended Posts

[Active Admin] rails g active_admin: Créer un écran de gestion de modèle par nom de modèle de ressource
Impossible de créer un utilisateur à partir de l'écran d'administration Active Admin
Supprimer la ressource Active Admin
rails modèle g Débit global
Rails routage des ressources singulières par ressource