/ / data nie jest zapisywana w bazie danych przy użyciu szyn jquery datepicker - javascript, jquery, ruby-on-rails, ruby, datepicker

data nie zapisana w bazie danych przy użyciu szyn jquery datepicker - javascript, jquery, ruby-rails, ruby, datepicker

Korzystam z datepicker interfejsu użytkownika jquery w mojej aplikacji w formie. kiedy zapisuję formularz, pole daty jest pokazane jako zero.

Zainstalowałem klejnot „jquery-ui-rails” i podałem wymaganie jquery ui.all w application.js i application.css

Mój kod wygląda następująco

 <div>
<%= f.label :deadline %>
<%= f.text_field :deadline, :id => "datepicker" %>
</div>

W application.js

  $(function() {
$( "#datepicker" ).datepicker({
minDate: 0
});
});

Po przesłaniu formularza

    Parameters: {"utf8"=>"✓","authenticity_token"=>"aoiDOLAGZHKui85hum7ozJ31QNZopOvmImyOuDyXCw4=", "task"=>{"task"=>"task1", "assigned_to_id"=>"2", "deadline"=>"10/30/2013", "project"=>"", "workspace_id"=>"4"}, "commit"=>"Create", "id"=>"4"}

Włóż w:

   INSERT INTO "tasks" ("assigned_to_id", "created_at", "project", "task", "updated_at", "user_id", "workspace_id") VALUES (?, ?, ?, ?, ?, ?, ?)  [["assigned_to_id", 2], ["created_at", Mon, 28 Oct 2013 09:51:22 UTC +00:00], ["project", ""], ["task", "task1"], ["updated_at", Mon, 28 Oct 2013 09:51:22 UTC +00:00], ["user_id", 1], ["workspace_id", 4]]

Tutaj nie ma pola terminu. Jest wyświetlany jako zero. Sprawdziłem również schemat sprawdzania pisowni ... wszystko jest w porządku. Jaki może być powód i jak to naprawić. Proszę, pomóżcie mi z tym.

Odpowiedzi:

3 dla odpowiedzi № 1

Może to stanowić problem w formacie daty dla bazy danych i został wprowadzony z datepicker

Zmień format daty w datepicker. lubić

$(function() {
$( "#datepicker" ).datepicker({
minDate: 0
dateFormat: "dd-mm-YYYY"
});
});

Lub możesz zmienić format daty w kontrolerze.

Domyślny format daty to data-miesiąc-rok.

Edytować:

W wielu bazach danych domyślnym formatem jest Dd / mm / rrrr

Dlatego musimy podać format daty z naszego selektora dat z tym samym formatem danych.

Ale w JQuery ui datepicker format danych domyślnych to dd/mm/yyyy który nie jest akceptowalnym formatem dla db. Tak więc wartość nie zapisuje się w db.

Czy musimy podać format daty pola daty jako Dd / mm / rrrr

W jquery datepicker dateFormat: „dd-mm-rrrr” ustawia format daty na taki sam.