私はレールが初めてで、フロントエンドプロジェクトをレール環境に移動しました。 start_date、end_date、start_timeの各列を持つフォームを設定しました。 start_dateおよびend_dateには列の型があります。dateおよびstart_timeには列の型:timeがあります。私は日付選択ツールを使用して時刻を選択する日付と時刻の選択を選択しています。私は、日付と時刻の両方を受け付けておりますするフォーマットは以下のとおりです。私は、ユーザにとってより分かり日付と時刻の形式を表示する瞬間のJSを使用して出力をフォーマットしたRails - :dateと:timeカラムにはゼロ値が表示されます
Wed Jan 11 2017 13:31:14 GMT+0530
。
moment().format('LL'); //January 23,2017
moment().format('LTS'); //1:17:54 PM
フォームを送信すると、日付と時刻の列はnilになります。
Date.parse()およびTime.parse()またはstrftimeを使用して日付を変換する必要があることを読んでいます。
私には2つの質問があります。 1.変換のコードはどこに置く必要がありますか?直観では、入力自体を取っている間に、コントローラ内にあるか、またはビュー内にあるべきだと思います。 2. [日付と時刻]列の形式は何ですか?
私はActiveRecordのデータベースとしてsqlite 3を持っていますが、私はRails 5.0.1を使用しています。
home.new.html.erb(3列タイプのためのフォームフィールド):
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<%= f.text_field :start_date,:class => "mdl-textfield__input"%>
<label class="mdl-textfield__label" for="home_start_date" id="start-date-label">Enter start date</label>
</div>
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<%= f.text_field :end_date,:class => "mdl-textfield__input"%>
<label class="mdl-textfield__label" for="home_end_date" id="end-date-label">Enter end date</label>
</div>
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<%= f.text_field :start_time,:class => "mdl-textfield__input"%>
<label class="mdl-textfield__label" for="home_start_time" id="start-time-label">Enter time</label>
</div>
home_controller.rb githubのに
class HomeController < ApplicationController
def index
@campaigns = Home.all
end
def new
@home = Home.new
end
def show
@campaign = Home.find(params[:id])
end
def create
home_params = params.require(:home).permit(:campaign_name,:phone_number_receiver,:start_date,:end_date,:start_time,:sms_msg)
@home = Home.new(home_params)
@home.save
end
end
リンク:あなたが処理しなければならないhttps://github.com/rimildeyjsr/sms-scheduler
私はレールを初めて使っていますが、より詳細な説明を教えてください。 –
コントローラコードを投稿した場合、そのコードをどのように修正するべきかを提案できます。 – ReggieB
コントローラコード –