Ruby on Rails Lernrekord -2020.10.06

Erstellen Sie eine Store-Einführungssite Automatische Erstellung der Shopliste

$ rails generate scaffold shop category_id:integer name:string address:string


$ rails db:migrate'```

 Assoziation von Kategorie Streik und Ladenlistenmodell


#### **`app/model/category.rb`**
```rb

class Category < ApplicationRecord
  has_many :shops
end

app/models/shop.rb


class Shop < ApplicationRecord
  belongs_to :category
end

Ermöglicht die Auswahl einer Kategorie im Registrierungs- / Änderungsformular

app/views/shops/_form.html.erb


<div class="field">
  <%= f.label :category_id %>
  <%= f.select :category_id, Category.all.map{|o| [o.name, o.id]} %>
</div>

Zeigen Sie den Kategorienamen in der Listenanzeige und die detaillierte Anzeige der Geschäftsliste an

app/view/shops/index.html.erb


<td><%= shop.category.name %></td>

app/view/shops/show.html.erb


app/view/shops/show.html.erb

Suchformular zum Anzeigen hinzufügen

/app/views/shops/index.html.erb


<%= form_tag('/shops', method: 'get') do %>
<%= label_tag(:name_key, 'Search name:') %>
<%= text_field_tag(:name_key) %>
<%= submit_tag('Search') %> <%= link_to 'Clear', shops_path %>
<% end %>

<br>

Ändern Sie die Indexmethode im Controller

/app/controllers/shops_controller.rb


def index
  if params[:name_key]
    @shops = Shop.where('name LIKE ?', "%#{params[:name_key]}%")
  else
    @shops = Shop.all
  end
end

Link von der Begrüßungsseite

app/views/welcome/index.html.erb


<h1>Lunch Map</h1>
<p>Tasty meal on your place!!</p>
<p><%= link_to 'Show shops', shops_path %></p>

Integrieren Sie Google Maps API Abkürzung für Application Programming Interface Eine Anweisung oder Funktion zum Aufrufen einer anderen Funktion aus einem Programm

Google Maps API Google Maps API | Google Developers https://developers.google.com/maps/

API-Schlüsselerfassungsverfahren
  1. Greifen Sie auf die Google Developers Console zu

Google Developers Console https://console.developers.google.com/

  1. Wählen Sie Projekt erstellen
  2. Wenn die Google API angezeigt wird, wählen Sie "Google Maps Embed API" aus der Google Maps API.
  3. Klicken Sie auf "Aktivieren".
  4. Klicken Sie auf "Anmeldeinformationen erstellen" und dann auf die Schaltfläche "Erforderliche Anmeldeinformationen"
  5. Notieren Sie den angezeigten API-Schlüssel
  • Es wird empfohlen, "API-Nutzungsbeschränkungen" festzulegen, damit diese nur von bestimmten Webdiensten verwendet werden können.
  • Dieses Verfahren und der Anwendungsbereich können sich auf der Google-Seite ändern.

Kartenbereich zur Ansicht hinzufügen

app/views/shops/show.html.erb


<%= content_tag(:iframe,
                'map',
                 src:'https://www.google.com/maps/embed/v1/place?key=AIzaSyCJBgcuCowQa5-V8owXaUCHhUNBN8bfMfU&q=' + @shop.address,
                 width: 800,
                 height: 400,
                 frameborder: 0) %>

<br>

Recommended Posts

Ruby on Rails Lernrekord -2020.10.03
Ruby on Rails Lernrekord -2020.10.04
Ruby on Rails Lernrekord -2020.10.05
Ruby on Rails Lernrekord -2020.10.09
Ruby on Rails lernen Rekord-2020.10.07 ①
Ruby on Rails Lernrekord -2020.10.06
Ruby on Rails Elementary
Ruby on Rails Grundlagen
[Ruby on Rails] Informationen zum Active Record-Rückruf
Ruby On Rails Association
Portfolioerstellung Ruby on Rails
[Ruby on Rails] Debuck (bindend.pry)
Brechen Sie die Ruby on Rails-Migration ab
Zusammenfassung der Ruby on Rails-Validierung
Ruby on Rails Grundlegendes Memorandum
Rubin lernen 4
Rubin lernen 5
Ruby on Rails5 - Schnellübungshandbuch 5.2 Kompatibel Kapitel2
Ruby lernen 3
Ruby lernen 2
Ruby on Rails5 - Schnellübungshandbuch 5.2 Kompatibel Kapitel3
Rubin lernen 6
Rubin lernen 1
[Ruby on Rails] Leseversuch (: [],: Schlüssel)
Ruby on Rails-Variablen, konstante Zusammenfassung
Installation von Ruby + Rails unter Ubuntu 18.04 (rbenv)
[Ruby on Rails] Paging-Funktion eingeführt
Grundkenntnisse in Ruby on Rails
Progate Ruby on Rails5 Rückblick
Verwendung von Ruby on Rails
(Ruby on Rails6) Gepostete Inhalte "löschen"
Ruby on Rails 6.0-Umgebungskonstruktionsnotiz
[Ruby on Rails] Erstellung der Bestätigungsseite
Ruby On Rails entwickelt Routing-Konflikte
[Ruby on Rails] Implementierung der Kommentarfunktion
[Ruby on Rails] Praktische Hilfsmethode
[Ruby on Rails] Stoppen Sie "Looping bis ..."
Ruby on Rails-Datensatzsuche, erstellen Sie die Methode find_or_create_by, wenn nicht
[Ruby on Rails] Suchfunktion (nicht ausgewählt)
[Rails] Hinzufügen der Ruby On Rails-Kommentarfunktion
[Ruby on Rails] Erstellen eines Anfrageformulars
Ruby on Rails6 Praktischer Leitfaden cp13 ~ cp15 [Memo]
[Ruby on Rails] Test mit RSpec anzeigen
[Ruby on Rails] Codeprüfung mit Rubocop-Airbnb
[Ruby on Rails] 1 Modell CRUD (Routing Main)
Ruby on Rails-Installationsmethode [Mac Edition]
Modell [Ruby on Rails], Befehl für Controller-Terminal
Befehl zum Erstellen / Löschen von Ruby on Rails-Modellen
Rückenwind auf Schienen