小编Jas*_*rty的帖子

Rails javascript仅在重新加载后才有效

问题正是标题所说的.javaScript位于资产管道中,即assets/javascripts/myfile.js.coffee在application.js中我有:

//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require jquery.ui.all
//= requier twitter/bootstrap
//= require jasny-bootstrap
//= require_tree .
Run Code Online (Sandbox Code Playgroud)

这是coffeescript

$(document).ready ->
  $("#close").click ->
    $(this).parent().parent().slideUp("slow")




  $( "#datepicker" ).datepicker
    dateFormat : "yy-mm-dd"


  player_count = $("#player option").length


  $('#btn-add').click ->
    $('#users option:selected').each ->
      if player_count >= 8
        $('#select-reserve').append("<option      value='"+$(this).val()+"'>"+$(this).text()+"</option>")
        $(this).remove()    
      else
        $('#player').append("<option value='"+$(this).val()+"'>"+$(this).text()+"</option>")
        $(this).remove()
        player_count++


  $('#btn-remove').click ->
    $('#player option:selected').each ->
      $('#users').append("<option value='"+$(this).val()+"'>"+$(this).text()+"</option>")
      $(this).remove()
      player_count--


  $('#btn-remove-reserve').click ->
    $('#select-reserve option:selected').each ->
      $('#users').append("<option value='"+$(this).val()+"'>"+$(this).text()+"</option>")
      $(this).remove()


  $("#submit").click ->
   $("select option").prop("selected", "selected")
Run Code Online (Sandbox Code Playgroud)

我可以在浏览器的源代码中看到javaScript已经加载,但它只在我重新加载页面后才能工作.

javascript ruby-on-rails ruby-on-rails-3 asset-pipeline

53
推荐指数
6
解决办法
3万
查看次数

重定向或渲染后不显示Flash消息

使用导轨4和红宝石2

无法显示来自控制器的Flash消息.我的方法看起来像这样:

def create
    @salary_report = SalaryReport.create(salary_report_params)
    if @salary_report.save  
      redirect_to @salary_report
      flash[:notice] = "Lönerapporten sparades korrekt!"
      puts "salary report saved #{flash[:notice]}"
    else
      render :new, notice: "Något gick fel när lönerapporten skulle sparas!"      
    end
  end
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我添加了一个puts语句,打印出flash通知只是为了证明重定向后生成了flash通知.

创建薪水报告后,日志如下所示:

Redirected to http://localhost:3000/salary_reports/20
salary report saved Lönerapporten sparades korrekt!
Completed 302 Found in 25ms (ActiveRecord: 9.7ms)
Run Code Online (Sandbox Code Playgroud)

在显示查看日志后:

Started GET "/salary_reports/22" for 127.0.0.1 at 2013-07-24 16:08:42 +0200
Processing by SalaryReportController#show as HTML
  Parameters: {"id"=>"22"}
  SalaryReport Load (0.5ms)  SELECT "salary_reports".* FROM "salary_reports" WHERE         "salary_reports"."id" = ? …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails

5
推荐指数
2
解决办法
8662
查看次数