[RUBY] Résolution d'un affichage HTML étrange en examinant le traitement dynamique de Rails

Remplacez simplement «<% =%>» par «<%%>» ...

[Mentor qui m'a donné des conseils]

【Environnement d'exploitation】 macOS 10.15.6 Rails 6.0.3.3 Ruby 2.6.6


C'est une histoire quand je travaillais sur une mission scolaire avec Ruby on Rails.

J'ai implémenté une fonction de recherche de base de données dans l'application Rails.

Créez un modèle utilisateur et migrez la base de données avec les colonnes «nom» et «âge».

Les données initiales ont été saisies à l'aide de "faker" et la page d'affichage de la liste a été créée.

index.html.erb


<%= search_form_for @q do |f| %>
  <%= f.label :name_cont, "Nom complet" %>
  <%= f.search_field :name_cont %>
  <%= f.label :age_eq, "âge" %>
  <%= f.search_field :age_eq %>
  <%= f.submit "Chercher" %>
<% end %>

<table>
  <tbody>
    <thead>
      <tr>
        <td>Nom</td>
        <td>âge</td>
      </tr>
    </thead>
    <%= @users.each do |user| %>
    <tr>
      <td><%= user.name %></td>
      <td><%= user.age %></td>
    </tr>
    <% end %>
  </tbody>
</table>

<%= paginate @users %>

Et quand j'ai démarré le serveur Rails,

1.png

Oh, la base de données est affichée! ??

Il n'y a pas d'erreur, seul l'affichage de l'écran est étrange ... Je ne connais pas l'erreur car il n'y a pas d'énoncé d'erreur ... Je ne peux pas dire l'erreur même si je regarde le matériel pédagogique ...

J'étais inquiet pendant deux jours. Si vous parlez plus tôt au mentor ...

La solution est un peu en dessous du centre du code ci-dessus,

    <%= @users.each do |user| %>

À

    <% @users.each do |user| %>

Juste changé en.

Comprenez vous?

Je viens de changer le «<% =» au début de l'instruction de code en «<%».

Avec juste ça

スクリーンショット 2020-10-05 10.10.08.png

Il était bien affiché.

Il semble que nous ayons besoin de mieux comprendre le traitement dynamique de Rails.


Merci d'avoir lu jusqu'au bout.

Si vous aimez, je fais aussi Twitter, donc si vous êtes intéressé, suivez-moi.


Recommended Posts

Résolution d'un affichage HTML étrange en examinant le traitement dynamique de Rails
[Rails] Traitement par lots régulier à chaque fois