2015-06-27 00:12
浏览 23


I have a small PHP service that is being called in a JavaScript file by AJAX :

    type: "GET",
    url: "getDate.php",                 
    data :{
    success: function(data) {

This service contains :

$fromDate = $_GET['fromDate'];
$toDate = $_GET['toDate'];
$fromdate = date_format($fromDate,"Y-m-d")."T".date_format($fromDate,"H:i:s")."Z";
$fromdate = urlencode($fromdate);
$todate = date_format($toDate,"Y-m-d")."T23:00:00Z";
$todate = urlencode($todate);
$url = "*+from+measures+where+time%3E%3D%27".$fromdate."%27+and+time%3C%3D%27".$todate."%27";
$data = file_get_contents($url, false);
echo $data;

I need to use this in my Rails application. I was wondering if I could put the .php file in a Rails folder, and simply call it. Or if there's a way to do a similar service in Rails?

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

  • dqsa17330 2015-06-27 00:50

    Sure, you can do this in Rails. First, you need to define the route for your request. Write the following in your routes.rb file, located at config/routes.rb:

    get "/getDate" => "generals#get_date"

    What that means is: whenever there is a GET request for /getDate, go to controller GeneralController, and invoke its function named get_date. If you wrote users#get_date, Rails would try to find the get_date method in UsersController.

    Generate the controller of your choice by following command:

    rails generate controller General

    It will generate a file named general_controller.rb in app/controller among other files.

    Now, you need to define all your logic there. Other thing: in PHP, you get the sent data using $_GET['formDate'], but in Rails, you will accomplish the same functionality by doing params[:formDate].

    def get_date
      form_date = params[:formDate]
      # and now here you can write all your logic, and can finally return the response
      respond_to do |format|
        format.json { render json: data_to_be_returned } 


    For date_create or date_format functions in PHP, you can look up their equivalents at here and here.

    解决 无用
    打赏 举报

相关推荐 更多相似问题