小编Chu*_*ckE的帖子

HTML/Javascript:如何使用src set访问脚本标记中加载的JSON数据

我有我在服务器上生成的JSON文件,因为页面是可见的,所以我想在客户端上访问它.基本上我想要实现的是:

我在我的html文档中声明了以下标记:

<script id="test" type="application/json" src="http://myresources/stuf.json">
Run Code Online (Sandbox Code Playgroud)

源中引用的文件具有JSON数据.正如我所见,数据已经下载,就像脚本一样.

现在,我如何在Javascript中访问它?我已经尝试使用和不使用jQuery访问脚本标记,使用多种方法来尝试获取我的JSON数据,但不知怎的,这不起作用.innerHTML如果json数据是在脚本中内联编写的,那么它本来可行.它不是,而不是我想要实现的目标.

页面加载后的远程JSON请求也不是一个选项,以防您想要建议.

html javascript html5 json script-tag

82
推荐指数
5
解决办法
12万
查看次数

表单之外的按钮html标签是否有效?

我只注意到,在的SoundCloud,跑道上的"动作"按钮(如,转贴等)都是HTML按钮标签.此外,它们既不在形式内,也不与形式相关联,也不提交表格(它们显然是通过javascript处理的).这是有效的HTML吗?没有表格的按钮是否可以存在?或者这只是使这些按钮成为可点击的div?屏幕阅读器的有效/无效程度如何?

html forms html5 button

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

Gemspec:如何指定不必自动要求的依赖项?

我写了一个带有一定数量依赖关系的gem,其中一些我不想在捆绑到另一个项目时隐式需要.一个例子是uuidtools gem,我只想在使用它的文件中要求它.

gem.add_dependency("uuidtools",["=2.1.3"], :require => false)
Run Code Online (Sandbox Code Playgroud)

这种语法是错误的,因为:require => false在那里是意外的,但这或多或少总结了我想用它做什么.有人可以帮我吗?

gem ruby-on-rails gemspecs

16
推荐指数
1
解决办法
4181
查看次数

Ruby未绑定方法:是否可以强制绑定到其他类的实例?

我想知道我是否可以强迫这种情况发生

class A
  def bomb ; "bomb" ; end
end

class B ; end

bomb = A.instance_method(:bomb)

b = B.new
bomb.bind(b)
Run Code Online (Sandbox Code Playgroud)

目前它抛出错误TypeError:bind参数必须是A的实例

我发现这对于我可以用这些未绑定的方法做的非常有限,可能性有点限制.在这些情况下(我不仅仅指幂等函数)它会有意义吗?并且执行错误就足够了,如果我将处理A中未在B中复制的变量,我真的很想知道如何强制这个绑定.

ruby instance-methods

12
推荐指数
1
解决办法
2474
查看次数

Backbone.js:为Backbone.sync实现定义超时

我在我的项目中使用骨干,与外部API的通信集成.我想使用记录的实时更新.由于我无法访问此外部应用程序的主后端,并且它们既不提供websocket服务器也不提供长轮询端点,所以我基本上可以选择使用setInterval进行常规轮询,并且周期为50秒.它一直运作良好.我的问题是边缘情况.如果出于某种原因,API请求会挂起,超过50秒,我想说,我将立即触发新请求.这意味着,现在有2个挂起请求,最终会加起来.有没有办法为请求设置超时?我知道所有请求都导致Backbone.sync,但我正在检查源代码,我没有看到任何可行的方法来设置XmlHttpRequest的超时.有没有办法干净地完成这项工作而不会覆盖行为?还是有其他解决方案/解决方法吗?

ajax real-time polling backbone.js

12
推荐指数
1
解决办法
8382
查看次数

如何在触发器功能中使用变量设置?

我想在会话/事务中记录用户的id,使用SET,所以我以后可以在触发器函数中使用它来访问它current_setting.基本上,我正在尝试从之前发布非常相似的票证中选择n2 ,区别在于我正在使用PG 10.1.

我一直在尝试3种设置变量的方法:

  • SET local myvars.user_id = 4,从而在交易中在本地设置;
  • SET myvars.user_id = 4从而将其设置在会话中;
  • SELECT set_config('myvars.user_id', '4', false),取决于最后一个参数,将是前两个选项的快捷方式.

它们都不能在触发器中使用,触发器NULL在获取变量时接收current_setting.这是我设计的用于对其进行故障排除的脚本(可以很容易地与postgres docker镜像一起使用):

database=$POSTGRES_DB
user=$POSTGRES_USER
[ -z "$user" ] && user="postgres"

psql -v ON_ERROR_STOP=1 --username "$user" $database <<-EOSQL
    DROP TRIGGER IF EXISTS add_transition1 ON houses;
    CREATE TABLE IF NOT EXISTS houses (
        id SERIAL NOT NULL,
        name VARCHAR(80),
        created_at TIMESTAMP WITHOUT TIME ZONE DEFAULT now(),
        PRIMARY KEY(id)
    );

    CREATE …
Run Code Online (Sandbox Code Playgroud)

postgresql global-variables plpgsql postgresql-triggers

12
推荐指数
3
解决办法
1905
查看次数

工厂女孩:可以重新打开工厂定义并完成它们吗?

您有这个特殊用例,我必须在没有特定参数的文件中定义工厂,然后在工厂定义中将其插入.这是我从外部依赖项(gem,plugin,whtv)导入工厂定义的情况,我需要在我的项目中扩展它.就像是:

# external def
FactoryGirl.define do
  factory :user do
    email "somebody@somebodysworld.com"
  end
end


# proj def
FactoryGirl.define do
  factory :user do
    password "qwerty"
  end
end
Run Code Online (Sandbox Code Playgroud)

这段代码不起作用,因为工厂女孩认为我正在重新定义工厂.但我真正想要的是扩展它.这可能吗?

unit-testing rspec ruby-on-rails factory-bot

8
推荐指数
1
解决办法
687
查看次数

Rails:使用AREL进行批处理的属性查询

我想使用类似的东西find_in_batches,但我想分组一个特定的属性,比如,让我们说,id,而不是分组完全实例化的AR对象.所以,基本上,混合使用find_in_batchespluck:

Cars.where(:engine => "Turbo").pluck(:id).find_in_batches do |ids|
  puts ids
end

# [1, 2, 3....]
# ...
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点(也许与Arel),而不必自己编写OFFSET/LIMIT逻辑或重复分页宝石如paginate或kaminari?

sql activerecord ruby-on-rails arel

8
推荐指数
1
解决办法
1527
查看次数

ActiveSupport :: Dependencies.autoload_paths:如何加载?

我在sinatra项目中使用ActiveSupport,并遵循一些同行的建议,我一直在使用ActiveSupport :: Dependencies.autoload_paths来简化我在开发中加载我的类.现在我正在接近部署日,我并不知道如何急切地加载它们.在Rails中,这很简单:只需设置config.cache_classes = true并按照自己的方式行事即可.但在Sinatra应用程序中,我没有看到如何急切加载它们.

activesupport sinatra eager-loading

7
推荐指数
0
解决办法
593
查看次数

ActiveAdmin:如何设置HTTP基本身份验证?

我想为ActiveAdmin设置基本身份验证,内部设计解决方案不适用于我的情况.为此,我希望能够将中间件添加到ActiveAdmin引擎,然后将其捆绑到我的应用程序中.我设法做的是:

ActiveAdmin::Engine.configure do |config|
  config.middleware.use Rack::Auth::Basic do |username, password|
    username == 'admin' && password == 'root'
  end  
end
Run Code Online (Sandbox Code Playgroud)

但显然这不起作用,因为我的主动管理路线仍未受到保护.我怎样才能有效地做到这一点?不,我不想用基本身份验证保护我的整个网站.

ruby-on-rails rack-middleware activeadmin

6
推荐指数
1
解决办法
4017
查看次数