小编use*_*621的帖子

Rails:手动创建记录时(不通过表单)“调用了私有方法‘require’#<Hash...”

我有一个文本文件,其中包含需要存储在数据库中的数据。

\n\n

在 Rails 控制器操作中,我有这样的内容:

\n\n
class ImportDataController < ApplicationController\n  protect_from_forgery except: :abc_client\n\n  def abc_client\n    ...simplified code:...\n    ...loading data from a file...\n    car = {}\n    car[:attr1] = something\n    car[:attr2] = something\n    car[:attr3] = something\n    ...and so on...\n\n    ...now I try to save the record to the DB...\n    @car = Cars::Crud::CreateService.new(car).create\n  end\nend\n
Run Code Online (Sandbox Code Playgroud)\n\n

我收到此错误:

\n\n
private method `require\' called for #<Hash:0x007fb2e2ef6040>\n
Run Code Online (Sandbox Code Playgroud)\n\n

以及该代码块上的错误点:

\n\n
def car_params(params)\n  params.require(:car).permit(:attr1, :attr2, ...)\n
Run Code Online (Sandbox Code Playgroud)\n\n

我还尝试通过 Rails 表单“正常”创建一条记录,并从控制台复制哈希值并尝试保存它,例如:

\n\n
params = {"utf8"=>"\xe2\x9c\x93", "authenticity_token"=>"kXMd23s4msX2OzhUAX2CWqyphnpCPNorQOvoitatj8uBsQBgGYbTgfoR1wTTWlufo++esyb5m9ogBfSHbCrAPA==", "car"=>{"attr1"=>"6", ...\n\n@car = …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails ruby-on-rails-4

5
推荐指数
1
解决办法
2453
查看次数

Rails 5 - 在link_to中,如何传递一个nil(NULL)参数?

我有一个链接,我需要传递一系列参数,其中2个参数始终是nill.

link_to go_to_action_path(id, par_01, par_02, par_03, par_04)
Run Code Online (Sandbox Code Playgroud)

在某些情况下是par_01par_02 nil在其他par_03par_04.

如果我在变量中有这些值:

par_01 = nil
par_02 = nil
par_03 = 'a'
par_04 = 'b'
Run Code Online (Sandbox Code Playgroud)

然后在go_to_action行动中:

p01 = params[:par_01]
p02 = params[:par_02]
p03 = params[:par_03]
p04 = params[:par_04]
Run Code Online (Sandbox Code Playgroud)

我得到这些值:

p01 => a
p02 => b
p03 => 
p04 => 
Run Code Online (Sandbox Code Playgroud)

换句话说,变量par_01par_02将被扔掉,并在他们的地方将被移动par_03par_04.

如何强制link_to接受带有nil值的参数?我正在考虑放置0s而不是nils然后在控制器动作中手动解析它,但这是一个非常难看的解决方案.

ruby parameters routes ruby-on-rails link-to

5
推荐指数
1
解决办法
282
查看次数

jQuery datepicker - 如何覆盖初始化?

我在我的项目中使用jQuery datepicker的全局初始化- 它几乎是这样的代码:

$('body').find(".datepicker").datepicker({dateFormat: 'yy-mm-dd'});
Run Code Online (Sandbox Code Playgroud)

不过,对于某些页面,我需要覆盖此全局定义,并且需要datepicker使用此设置(重新)初始化:

jQuery(function() {     
        var date = new Date();
        var currentMonth = date.getMonth();
        var currentDate = date.getDate();
        var currentYear = date.getFullYear();

        $('.datepicker').datepicker({
            dateFormat: 'yy-mm-dd',
            minDate: new Date(currentYear, currentMonth-3, currentDate),
            maxDate: new Date(currentYear, currentMonth+3, currentDate)
        });
    });
Run Code Online (Sandbox Code Playgroud)

问题是第二个代码块(使用minDatemaxDate)永远不会“执行” - 的原始初始化datepicker不会被覆盖。

解决此问题的一种方法是将所有.datepicker类重命名为datepicker2. 但是,该页面上有 12 个此类输入,我需要在 3 个页面上进行此页面更改,因此它会更改为 40 个输入类。

有更好的解决方案吗?

javascript jquery datepicker

5
推荐指数
1
解决办法
1052
查看次数

2012年首选的布局宽度

我正在研究新的网络应用程序,仍然无法决定,我应该选择的布局宽度.该应用程序基于Twitter Bootstrap的库,目前我使用默认网格系统(12列),宽度为1170px.

在显示器上(我假设大多数人的宽度分辨率高于1280像素)看起来应用不错,在我的MacBook PRO上也一样,但是我担心用户有点旧的笔记本电脑,其宽度 - 分辨率大多是1024px,并没有看到整个布局(并将看到水平滚动条).

所以,我想问你的意见.您是否优化了分辨率> 1280px的布局,或者您仍然使用res来反映用户.1024px并在这种情况下使用宽度960px为您的布局?

html css layout width screen-resolution

4
推荐指数
1
解决办法
3605
查看次数

Rails - 如何处理不存在的路由("没有路由匹配[GET]")?

我的route样子

match 'about' => 'company#about'
Run Code Online (Sandbox Code Playgroud)

当我设置为URL时http://localhost:3000/aboutttt,我收到错误消息

No route matches [GET] "/aboutttt"
Run Code Online (Sandbox Code Playgroud)

我想给用户更好的反馈.

我认为最好的解决方案可能是重定向应用程序,或者在应用程序的主页上,但是当我得到上述错误时,以任何方式存在于路由中以设置默认路由?

ruby routes ruby-on-rails-3

4
推荐指数
2
解决办法
6379
查看次数

CSS - 如何使单词结束模糊?

当你用信息在盒子上移动光标时,我真的很喜欢twitter模糊长名称的结尾.

我想尝试做一些类似的东西,但有一点区别 - 我有一个DIV(让我们说宽度:100px;)当内部文本长于100px时 - 那将是相应文本模糊的结尾......

谁能给我一些例子/来源/建议,怎么做?

谢谢

例

html css blur css3

4
推荐指数
1
解决办法
1690
查看次数

如何允许字母,数字,句号,连字符和下划线的字符串?

我正在尝试制作一个正则表达式,允许使用小字母和大字母+数字创建字符串 - a-zA-z0-9以及字符:.-_

我如何制作这样的正则表达式?

ruby regex

4
推荐指数
1
解决办法
8685
查看次数

Rails - 无法运行app:无法加载EventMachine C扩展;

当我在Lion OS X上运行应用程序时,我收到此错误:

Unable to load the EventMachine C extension; To use the pure-ruby reactor, require 'em/pure_ruby'
/Users/adam/.rvm/gems/ruby-1.9.2-p290/gems/eventmachine-1.0.0/lib/eventmachine.rb:8:in `require': no such file to load -- rubyeventmachine (LoadError)
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290/gems/eventmachine-1.0.0/lib/eventmachine.rb:8:in `<top (required)>'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:68:in `require'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:68:in `block (2 levels) in require'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:66:in `each'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:66:in `block in require'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:55:in `each'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:55:in `require'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler.rb:122:in `require'
    from /Users/adam/rubydev/future_computers/config/application.rb:7:in `<top (required)>'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/commands.rb:53:in `require'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/commands.rb:53:in `block in <top (required)>'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/commands.rb:50:in `tap'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/lib/rails/commands.rb:50:in `<top (required)>'
    from script/rails:6:in …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails eventmachine bundler

4
推荐指数
3
解决办法
2万
查看次数

CSS:如果在DIV上使用不透明度,内部的一切都更轻

我有这样的结构:

<div class="abc">
  <ul>
    <li>something</li>
    ...
  </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

我需要在abcdiv 上应用不透明度选项.如果我这样做,它可以工作,但内部文本<ul>具有不透明度,因为abcDIV =>文本输入<ul>更轻.

是否有任何方法可以应用于opacityDIV(其背景),但不适用于DIV内容?

谢谢

html csv opacity

4
推荐指数
1
解决办法
6773
查看次数

比较来自PostgreSQL的javascript日期时间和时间戳

在PostgreSQL数据库中,我在timestamp列中保存了这个值:2013-03-15 08:50:00.我的目标是从数据库中获取此日期并检查,如果当前时间比数据库中的时间少12小时.

为此,我希望new Date()从数据库中获取当前时间并将其与日期进行比较 - 但由于时间格式不同,这不起作用.

我怎么能这样做并将这些时间转换为相同(可比较)的格式?

javascript sql datetime timestamp date

4
推荐指数
1
解决办法
8302
查看次数