2016-04-12 53 views
0

Mücevher, * .js ve * .css dosyaları bakımından iki benzer uygulama sahibiyim. Düzenleme görünümü her iki durumda da aynı _form kısmi kullanır.Aynı kısmi iki farklı uygulamada farklı davranır

İşte işte burada.

<%= simple_form_for @assessment do |f| %> 
    <% if @assessment.errors.any? %> 
    <div id="error_explanation"> 
     <h2><%= pluralize(@assessment.errors.count, "error") %> prohibited this assessment from being saved:</h2> 

     <ul> 
     <% @assessment.errors.full_messages.each do |message| %> 
      <li><%= message %></li> 
     <% end %> 
     </ul> 
    </div> 
    <% end %> 

    <table> 
    <tbody> 
     <tr> 
     <td> 
      <%= f.input :question, label: 'Question' %> 
     </td> 
     </tr> 
     <tr> 
     <td> 
      <%= f.input :answer, label: 'Answer' %> 
     </td> 
     </tr> 
    </tbody> 
    </table> 

    <div class="actions"> 
    <%= f.submit 'Save'%> 
    <%= f.button :button, 'Reset', :type => 'reset', :class => 'btn' %> 
    </div> 

<% end %> 

ilk uygulamasında giriş alanı etiket alanının yanındaki oluşturulur, ancak ikinci uygulamada aynı giriş alanı etiket alanının altında oluşturulur neden anlamıyor?

Herhangi bir önyükleme ya da benzeri kullanmıyorum. İşte

her iki uygulamada benim application.js dosyası: Ben her iki uygulamalar için özdeş tek CSS/SCSS dosyası, scaffolds.scss sahip

// This is a manifest file that'll be compiled into application.js, which will include all the files 
// listed below. 
// 
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts, 
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path. 
// 
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the 
// compiled file. 
// 
// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details 
// about supported directives. 
// 
//= require jquery 
//= require jquery_ujs 
//= require turbolinks 
//= require_tree . 

, işte burada:

body { 
    background-color: #fff; 
    color: #333; 
    font-family: verdana, arial, helvetica, sans-serif; 
    font-size: 13px; 
    line-height: 18px; 
} 

p, ol, ul, td { 
    font-family: verdana, arial, helvetica, sans-serif; 
    font-size: 13px; 
    line-height: 18px; 
} 

pre { 
    background-color: #eee; 
    padding: 10px; 
    font-size: 11px; 
} 

a { 
    color: #000; 

    &:visited { 
    color: #666; 
    } 

    &:hover { 
    color: #fff; 
    background-color: #000; 
    } 
} 

div { 
    &.field, &.actions { 
    margin-bottom: 10px; 
    } 
} 

#notice { 
    color: green; 
} 

.field_with_errors { 
    padding: 2px; 
    background-color: red; 
    display: table; 
} 

#error_explanation { 
    width: 450px; 
    border: 2px solid red; 
    padding: 7px; 
    padding-bottom: 0; 
    margin-bottom: 20px; 
    background-color: #f0f0f0; 

    h2 { 
    text-align: left; 
    font-weight: bold; 
    padding: 5px 5px 5px 15px; 
    font-size: 12px; 
    margin: -7px; 
    margin-bottom: 0px; 
    background-color: #c00; 
    color: #fff; 
    } 

    ul li { 
    font-size: 12px; 
    list-style: square; 
    } 
} 

dosya application.html.erb, title hariç her iki uygulama için de aynıdır, işte burada:

Burada neyim var?

Sayfa işlendiğini inceledim, HTML'nin her iki durumda da aynı olmadığını gördüm. İşte doğru sonraki etikete giriş alanını render edilir app 1'de HTML:

<input class="string optional" type="text" value="Yes" name="assessment[answer]" id="assessment_answer"> 

Ve burada giriş alanı etiketi altında oluşturulur app 2 HTML kodunun aynı çizgisidir:

<input class="string optional" maxlength="255" size="255" type="text" value="Yes" name="assessment[answer]" id="assessment_answer"> 

maxlength="255" ek parametresi olarak bu satırı, orada eklendiğine ilişkin hiçbir ipucu yoktur.

+0

Aynı tarayıcı sürümü de dahil olmak üzere her şey aynı mı? Elemanları incelerim ve konsoldaki css sınıflarına bakarım. –

+0

Evet, her iki uygulamayı da Safari tarayıcısını kullanarak çalıştırıyorum. –

+0

Her iki uygulamayı da Google Chrome tarayıcısında kullanırken aynı garip davranışı alıyorum. –

cevap

0

config/initializers klasörünün altında ikinci uygulamada bir dosya eksikti. Dosya simple_form.rb eklendikten sonra sunucu yeniden başlatıldı sorun ortadan kalktı. Alınan ipuçları için çok teşekkürler.

+0

Dosyalarda/klasörlerde farklılıklar bulmaya çalışıyorsanız, BeyondCompare gibi bir şeye bakın. Çok yararlı olabilirdi ve bu sorunun nedenini görmek kolaylaştı. –

İlgili konular