2011-11-19 6 views
-1

안녕하세요, 저는 새로운 문제가 생겼습니다. 내 레일 애플 리케이션에서 나는 작업 컨트롤러와 model.When 내가 "due_date"오류 메시지를 가지고 새로운 작업을 만들려고 빈, 안된다하지만 내 콘솔을 확인하면 거기에 성공 message.Here 내 코드입니다 :콘솔에 확인이 표시되지만 브라우저에 오류가 표시됩니까?

내 컨트롤러 :

class TasksController < ApplicationController 

    layout "payroll" , :except => [:closed,:today,:this_week, :this_month] 

    # GET /tasks 
    # GET /tasks.xml 
    def index 
    @menu = "Timesheet" 
    @page_name = "Manage Task" 
    company_id = Company.find_by_subdomain(request.subdomain) 
    @users = User.find_all_by_company_id(company_id) 
    @tasks = Task.find_all_by_assigned_to(session[:current_user_id].to_i)#.page(params[:page]) 
    @task = Task.new 

    respond_to do |format| 
     format.html # index.html.erb 
     format.html # new.html.erb 
     format.xml { render :xml => @tasks } 
    end 
    end 
# POST /tasks 
    # POST /tasks.xml 
    def create 
    @task = Task.new(params[:task]) 
    #@task.assigned_to = session[:user_id] 
    @task.task_status = "0" 

    respond_to do |format| 
     if @task.save 
     Email.task_created(@task).deliver 
     @tasks = Task.all 
     @task = Task.new 
     format.html { redirect_to tasks_path } 
     format.xml { render :xml => @task, :status => :created, :location => @task } 
     else 
     format.html { render :action => "new" } 
     format.xml { render :xml => @task.errors, :status => :unprocessable_entity } 
     end 
    end 
    end 

내 모델 :

class Task < ActiveRecord::Base 
    #validation start 
    validates :description, :due_date, :assigned_to, :priority, :presence => true 
    validates_length_of :description, :maximum =>500 
end 

및 전망 :

<%= form_for(@task) do |f| %> 
    <%= render 'shared/form_error', :object => @task %> 

    <div class="field"> 
     <%= f.label :description %><br /> 
     <%= f.text_area :description ,:rows => "2", :cols => "20" %> 
    </div> 
    <div class="field"> 
     <%= f.label :due_date %><br /> 
     <%= f.text_field :due_date %> 
    </div> 
    <div class="field"> 
     <%= f.label :assigned_to %><br /> 
     <%= collection_select(:task, :assigned_to, User.all, :id, :first_name, :prompt =>true) %> 
    </div> 
    <div class="field"> 
     <%= f.label :priority %><br /> 
     <%= f.select (:priority, [['High'],['Medium'],['Low']]) %> 
    </div> 

    <div class="actions"> 
     <button type="submit" class="btn"><img src="/images/add.png" />&nbsp; Add This Task</button> 
    </div> 
<% end % 

내 콘솔 메시지은 : 여기 우려의 달력 display.But 원인 J 쿼리 날짜 선택기를 사용

Started GET "/tasks" for 127.0.0.1 at Sat Nov 19 12:27:10 +0530 2011 
    Processing by TasksController#index as HTML 
    ←[1m←[36mCompany Load (0.0ms)←[0m ←[1mSELECT "companies".* FROM "companies" WHERE "companies"."subdomain" = 'rsgroup' 
LIMIT 1←[0m 
    ←[1m←[35mUser Load (0.0ms)←[0m SELECT "users".* FROM "users" WHERE "users"."company_id" = 1 
    ←[1m←[36mTask Load (0.0ms)←[0m ←[1mSELECT "tasks".* FROM "tasks" WHERE "tasks"."assigned_to" = 1←[0m 
Rendered shared/_page_title.html.erb (0.0ms) 
Rendered shared/_no_record.html.erb (0.0ms) 
Rendered tasks/_task_table.html.erb (5.0ms) 
Rendered shared/_form_error.html.erb (1.0ms) 
    ←[1m←[35mUser Load (0.0ms)←[0m SELECT "users".* FROM "users" 
Rendered tasks/_form.html.erb (130.0ms) 
Rendered shared/_sidebar.html.erb (0.0ms) 
Rendered shared/_payroll_footer.html.erb (1.0ms) 
Rendered tasks/index.html.erb within layouts/payroll (173.0ms) 
Completed 200 OK in 253ms (Views: 183.0ms | ActiveRecord: 0.0ms) 

왜 내 작업은 저장되지 않습니다? 제발 나를 안내 해줘. 미리 감사드립니다.

+1

첫 번째 단계 : 오류 페이지의 'POST'데이터를 표시하십시오. – jimworm

+1

또한 콘솔은'index' 액션에'GET'을 보여 주지만'create'에 대해서 이야기하고 있습니까? – jimworm

+0

안녕하세요 jim은 index.html에 내 _form.hml.erb patial을 렌더링하므로이 혼란은 – Ravindra

답변

0

안녕하세요, 저는 응답이 있습니다. 몇개의 CSS와 자바 스크립트 파일을 내 공용 폴더에 추가했는데 문제가 해결되었습니다.

1

당신은 당신의 코드

format.xml { render :xml => @task, :status => :created, :location => @task }

이 끝난 후 저장됩니다 및 @task = Task.new의 assignement 후 오류가 있습니다.

또한 오류가 게시 된 due_date 형식이 잘못되었을 수 있습니다. @jimworm이 요청한대로, 색인 페이지 요청이 아닌 POST 요청을 제공하십시오. 요청에 따라 제출 된 매개 변수를 얻을 수 있습니다. rails c에서 제출 된 문자열에서 Date을 만들고 nil이 아닌지 확인하십시오.

+0

안녕하세요, Mark 당신과 동의하지만 동일한 날짜 필드가있는 양식에만 문제가 있습니다. – Ravindra

+0

날짜 형식에 문제가있는 것 같습니다. @jimworm이 요청한대로 POST 요청시 로그를 제공하십시오. –

+0

안녕하세요. 마크, 좀 더 제발 그걸 정리해 줄래? – Ravindra

관련 문제