次のようにリモート ブートストラップ バリデーターを追加しました ( http://bootstrapvalidator.com/validators/remote/から):
form.bootstrapValidator
trigger: 'blur',
fields:
'tenant[domain]':
validators:
remote:
type: 'GET',
url: (validator) ->
return Routes.tenant_domains_path($('#tenant_domain').val())
問題は、type オプションも url オプションも機能していないことです。
js コンソールの出力は次のとおりです。
POST http://localhost:3000/shop/function%20(validator)%20%7B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20Routes.tenant_domains_path($(%27#tenant_domain%27).val());%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20}?tenant%5Bdomain%5D=testdomain 404 not found
そして、そうあるべきです(私はそれが欲しいです;P):
GET http://localhost:3000/shop/testdomain/domains
さらに、フォームは送信されません (ただし、エラーはありません)。
重要な場合は、次の形式を使用します。
<%= form_for @tenant, {role: 'form', html: {multipart: true}} do |f| %>
<%= f.text_field :domain, required: true %>
<%= f.submit t('tenant.new_tenant'), class: 'btn btn-primary' %>
<% end %>
ここで何が間違っていますか?
編集:ああ、そして
$.getJSON Routes.tenant_domains_path($('#tenant_domain').val())
適切な URL にデータを送信しています:
GET http://localhost:3000/shop/testdomain/domains