Beim Anpassen des Schienengerüsts hatte ich Probleme mit der schlanken Ausgabe, also dem Kampf, sie zu realisieren
・ Personen, die eine schlanke Template-Engine für Schienen verwenden Oder wer die Rails Template Engine schlank machen will ・ Personen, die das Gerüst anpassen, aber die Ansicht zum Anpassen aufgeben Oder jemand, der das Gerüst anpassen möchte
Rails 6.0.2.2
ruby 2.6.5
Lesen Sie diesen Artikel und fügen Sie einen Edelstein namens "Slim-Rails" hinzu. https://qiita.com/ftyabu/items/42eb62901b6b56a7dc72
In diesem Artikel erfahren Sie, wie Sie eine Vorlage erstellen und ihre Referenz ändern. https://qiita.com/akito1986/items/d9f379191fd6b98de955
Ich denke, dass die folgenden Dateien in "Teil 2" oben erstellt wurden. (Kann je nach Einstellung unterschiedlich sein)
$ tree lib/templates
lib/templates
├── erb
│ ├── controller
│ │ ├── templates
│ │ │ └── view.html.erb
│ │ └── view.html.erb
│ ├── mailer
│ │ ├── templates
│ │ │ ├── view.html.erb
│ │ │ └── view.text.erb
│ │ ├── view.html.erb
│ │ └── view.text.erb
│ └── scaffold
│ ├── _form.html.erb
│ ├── edit.html.erb
│ ├── index.html.erb
│ ├── new.html.erb
│ ├── show.html.erb
│ └── templates
│ ├── _form.html.erb
│ ├── edit.html.erb
│ ├── index.html.erb
│ ├── new.html.erb
│ └── show.html.erb
└── rails
├── assets
│ ├── javascript.js
│ ├── stylesheet.css
│ └── templates
│ ├── javascript.js
│ └── stylesheet.css
├── controller
│ ├── controller.rb
│ └── templates
│ └── controller.rb
├── helper
│ ├── helper.rb
│ └── templates
│ └── helper.rb
└── scaffold_controller
├── api_controller.rb
├── controller.rb
└── templates
├── api_controller.rb
└── controller.rb
16 directories, 28 files
Lassen Sie uns dieses "erb" -Verzeichnis in "slim" ändern.
Nun, hier ist die Produktion. Ich habe nach einem hilfreichen Artikel gesucht, ihn aber nicht gefunden. Schauen wir uns zunächst den Inhalt der Zieldatei an
lib/templates/erb/scaffold/index.html.erb.tt
<p id="notice"><%%= notice %></p>
<h1><%= plural_table_name.titleize %></h1>
<table>
<thead>
<tr>
<% attributes.reject(&:password_digest?).each do |attribute| -%>
<th><%= attribute.human_name %></th>
<% end -%>
<th colspan="3"></th>
</tr>
</thead>
<tbody>
<%% @<%= plural_table_name %>.each do |<%= singular_table_name %>| %>
<tr>
<% attributes.reject(&:password_digest?).each do |attribute| -%>
<td><%%= <%= singular_table_name %>.<%= attribute.column_name %> %></td>
<% end -%>
<td><%%= link_to 'Show', <%= model_resource_name %> %></td>
<td><%%= link_to 'Edit', edit_<%= singular_route_name %>_path(<%= singular_table_name %>) %></td>
<td><%%= link_to 'Destroy', <%= model_resource_name %>, method: :delete, data: { confirm: 'Are you sure?' } %></td>
</tr>
<%% end %>
</tbody>
</table>
<br>
<%%= link_to 'New <%= singular_table_name.titleize %>', new_<%= singular_route_name %>_path %>
Ich war mir über das Symbol <%% = nicht sicher, vielleicht ist es Leuten bekannt, die erb regelmäßig verwenden.
https://qiita.com/ykhirao/items/7ff9ce515a82a6dd24ea
Dieser Artikel führte <%% =
ein. Dies soll verhindern, dass die erb-Datei beschädigt wird, selbst wenn der erb einmal erweitert wird.
Wie kann ich das mit slim erreichen? ..
Ich erinnerte mich plötzlich hier. Die Existenz von "erb2slim".
Ich habe es versucht und geglaubt, dass "erb richtig geschrieben wurde und es reparieren würde". ..
lib/templates/erb/scaffold/index.html.slim
p#notice
- %= notice
h1
= plural_table_name.titleize
table
thead
tr
- attributes.reject(&:password_digest?).each do |attribute|
th
= attribute.human_name
th[colspan="3"]
tbody
| <ruby code="% @
= plural_table_name
| .each do |
= singular_table_name
| | ">
tr
- attributes.reject(&:password_digest?).each do |attribute|
td
- %= <%= singular_table_name
| .
= attribute.column_name
| %>
td
- %= link_to 'Show', <%= model_resource_name
| %>
td
- %= link_to 'Edit', edit_<%= singular_route_name
| _path(
= singular_table_name
| ) %>
td
- %= link_to 'Destroy', <%= model_resource_name
| , method: :delete, data: { confirm: 'Are you sure?' } %>
- % end
br
- %= link_to 'New <%= singular_table_name.titleize
| ', new_
= singular_route_name
| _path %>
Es riecht nur nach Zusammenbruch. .. .. Lol Wie erwartet war es bei der Ausführung des Gerüsts eine Reihe von Syntaxfehlern. Immerhin scheint es sicherer, es selbst zu beheben
Ich wollte jedoch mit etwas anfangen, und als ich plötzlich verschiedene Dinge erforschte "Slim-Rails sollten in erster Linie mit der Gerüstschablone spielen." Ich hatte eine gute Idee, also habe ich sie überprüft. Dann ... https://github.com/slim-template/slim-rails war.
slim-rails/lib/generators/slim/scaffold/templates/index.html.slim
h1 Listing <%= plural_table_name %>
table
thead
tr
<% attributes.each do |attribute| -%>
th <%= attribute.human_name %>
<% end -%>
th
th
th
tbody
- @<%= plural_table_name %>.each do |<%= singular_table_name %>|
tr
<% attributes.each do |attribute| -%>
td = <%= singular_table_name %>.<%= attribute.name %>
<% end -%>
td = link_to 'Show', <%= singular_table_name %>
td = link_to 'Edit', edit_<%= singular_table_name %>_path(<%= singular_table_name %>)
td = link_to 'Destroy', <%= singular_table_name %>, data: { confirm: 'Are you sure?' }, method: :delete
br
= link_to 'New <%= human_name %>', new_<%= singular_table_name %>_path
Mit anderen Worten, Sie können darauf verweisen und die Vorlage nach Ihren Wünschen ändern. Wenn Sie es finden, ist dies derjenige. Bitte führen Sie ein wundervolles, individuelles Leben, während Sie den Wortlaut ändern, die Struktur ändern und fleißig experimentieren.
Quellcode bei Problemen Wenn ich es früh bemerkte, war es sofort gelöst
Recommended Posts