Utilisez l'échafaudage pour former des idées, ajouter, supprimer, modifier, afficher.
rails generate scaffold idea name:string description:text picture:string
Ensuite, mettez à jour la base de données.
rails db:migrate
app/views/layouts/application.html.erb
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
Ajoutez ce qui suit avant cette ligne
app/views/layouts/application.html.erb
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css">
Modifiez également l'intérieur de <body>
comme suit.
app/views/layouts/application.html.erb
<div class="container">
<%= yield %>
</div>
Ajoutez ensuite la navigation et les pieds de page à votre mise en page. Ajoutez ce qui suit immédiatement après «
».app/views/layouts/application.html.erb
<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="/">The Idea app</a>
</div>
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li class="active"><a href="/ideas">Ideas</a></li>
</ul>
</div>
</div>
</nav>
De plus, ajoutez ce qui suit juste avant </ body>
.
app/views/layouts/application.html.erb
<footer>
<div class="container">
Rails Girls 2020
</div>
</footer>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
Cela change également le style du tableau des idées.
app/assets/stylesheets/application.css
body { padding-top: 100px; }
footer { margin-top: 100px; }
table, td, th { vertical-align: middle; border: none; }
th { border-bottom: 1px solid #DDD; }
Ouvrez Gemfile
et
Immédiatement après «gem'sqlite3», ajoutez la ligne suivante,
gem 'carrierwave'
Exécutez ensuite la commande suivante dans le terminal:
bundle
Ensuite, vous pouvez générer du code pour effectuer le téléchargement avec la commande suivante:
rails generate uploader Picture
prochain,
app/models/idea.rb
class Idea < ApplicationRecord
Immédiatement après, écrivez ce qui suit.
app/models/idea.tb
mount_uploader :picture, PictureUploader
plus loin,
app/views/ideas/_form.html.erb
<%= form.text_field :picture %>
Modifiez ceci comme suit:
app/views/ideas/_form.html.erb
<%= form.file_field :picture %>
Cela montre simplement le chemin du fichier. Alors
app/views/ideas/show.html.erb
<%= @idea.picture %>
Modifiez le code ci-dessus comme suit.
app/views/ideas/show.html.erb
<%= image_tag(@idea.picture_url, width: 600) if @idea.picture.present? %>
config/routes.rb
root to: redirect('/ideas')
rails generate controller pages info
Tout d'abord, préparez un compte Heroku. Écran d'enregistrement de l'utilisateur: (https://signup.heroku.com/)
Pour Mac
brew install heroku/brew/heroku
Une fois Heroku Toolbelt installé, entrez la commande suivante dans le terminal:
heroku login
Ajoutez ensuite le code que vous avez créé au système de gestion des versions. Entrez la commande suivante dans le terminal:
echo public/uploads >> .gitignore
git add .
git commit -m "initial commit"
gem 'sqlite3', '~> 1.4'
Modifiez ce code comme suit:
group :development do
gem 'sqlite3', '~> 1.4'
end
group :production do
gem 'pg'
end
Exécutez ensuite la commande suivante sur le terminal pour le configurer.
bundle install --without production
git add . git commit -m "Added pg gem and updated Gemfile.lock"
En cas de succès, ce qui suit sera affiché.
Creating ⬢ first-app... done http://my-first-app.herokuapp.com/ | https://git.heroku.com/my-first-app.git
Si le nom de l'application est déjà utilisé, il ressemblera à ceci:
Creating ⬢ my-first-app... ! ▸ Name first-app is already taken
Code push
Envoyez le code à heroku.
git push heroku main
Migration de base de données
heroku run rails db:migrate
Vous pouvez voir l'application sur Internet en exécutant la commande suivante:
herku open
Recommended Posts