小编nic*_*elo的帖子

PyYAML转储格式

我知道在SO上有一些关于这个的问题,但我找不到我想要的东西.

我正在使用pyyaml来读取(.load()).yml文件,修改或添加一个键,然后.dump()再次写入它.问题是我想在转储后保留文件格式,但它会改变.

例如,我编辑键en.test.index.few"Bye",而不是"Hello"

蟒蛇:

with open(path, 'r', encoding = "utf-8") as yaml_file:
    self.dict = pyyaml.load(yaml_file)
Run Code Online (Sandbox Code Playgroud)

然后,更改密钥:

with open(path, 'w', encoding = "utf-8") as yaml_file:
    dump = pyyaml.dump(self.dict, default_flow_style = False, allow_unicode = True, encoding = None)
    yaml_file.write( dump )
Run Code Online (Sandbox Code Playgroud)

YAML:

之前:

en:
  test:
    new: "Bye"
    index:
      few: "Hello"
  anothertest: "Something"
Run Code Online (Sandbox Code Playgroud)

后:

en:
  anothertest: Something
  test:
    index:
      few: Hello
    new: Bye
Run Code Online (Sandbox Code Playgroud)

有没有办法保持相同的格式?,例如qoutes和order.我使用了错误的工具吗?

我知道也许原始文件不完全正确,但我无法控制它(这是一个Ruby on Rails i18n文件).

非常感谢你.

python quotes yaml pyyaml python-3.x

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

使用XslCompiledTransform进行空白剥离

我正在尝试将大型应用程序迁移XslTransform到已编译的xsl文件和XslCompiledTransform.

该应用程序使用Xsl创建HTML文件,并将转换数据(Xml)传递给Xsla XmlDataDocument,从数据库返回.

我现在改变所有这一切(至少暂时):

C#

 public string ProcessCompiledXsl(XmlDataDocument xml)
 {
       StringBuilder stringControl = new StringBuilder();
       XslCompiledTransform xslTran = new XslCompiledTransform();

       xslTran.Load(
           System.Reflection.Assembly.Load("CompiledXsl").GetType(dllName)
       );

       xslTran.Transform(xml, this.Arguments, XmlWriter.Create(stringControl, othersettings), null);

       return stringControl.ToString();
 }
Run Code Online (Sandbox Code Playgroud)

XSL(仅举例)

...
  <xsl:output method="html" indent="yes"/>
  <xsl:template match="/">
       <xsl:for-each select="//Object/Table">
              <a href="#">
                     some text
              </a>
       </xsl:for-each>
  </xsl:template>
Run Code Online (Sandbox Code Playgroud)

问题

这是有效的,但xsl正在剥离输出的标签之间的空格:

<a href="#">
   some text
</a><a href="#">
   some text
</a><a href="#">
   some text
</a><a...etc
Run Code Online (Sandbox Code Playgroud)

我试过了:

  • 使用,xml:space="preserve"但我无法让它工作
  • 覆盖了OutputSettings,但我没有得到任何好结果(也许我错过了一些东西) …

c# xslt whitespace xslcompiledtransform

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

Ruby 2.0抛出"[BUG]堆栈一致性错误"

我正在关注Ruby Koans的练习,并且about_proxy_object_project.rb有以下代码:

class Proxy
  def initialize(target_object)
    @object = target_object
  end

  # This method was added by me
  def method_missing(method_name, *args, &block)
    @object.send method_name
  end
end
Run Code Online (Sandbox Code Playgroud)

这被称为:

def test_tv_methods_still_perform_their_function
  tv = Proxy.new(Television.new) # Television is a class with a :channel attr_accessor and a power method

  tv.channel = 10
  tv.power

  assert_equal 10, tv.channel
  assert tv.on?
end
Run Code Online (Sandbox Code Playgroud)

问题是该行tv.channel = 10正在"破解"解释器并抛出:

[BUG] Stack consistency error (sp: 53, bp: 54)
ruby 2.0.0p0
(...)    
full stack trace follows
Run Code Online (Sandbox Code Playgroud)

我已经尝试使用Ruby 1.9.3的相同代码并且它正在工作.我正在使用Ruby …

ruby ruby-2.0

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

在javascript中退出setInterval方法

我有一个setInterval()函数,使用如下

        setInterval(function(){

           if(window.document.drops.isFinished()){
               //I want to exit the setInterval() on executing this if
           }

        },1000);
Run Code Online (Sandbox Code Playgroud)

或告诉我退出的方法是什么.(在java中我们使用System.exit(0))

javascript

7
推荐指数
1
解决办法
1万
查看次数

函数中的jquery变量

在页面加载中,我设置了一个变量

$(document).ready(function() {
  var inv_count = 3;
  });
Run Code Online (Sandbox Code Playgroud)

当我尝试在函数内部引用该变量时,它不起作用.

function blah(a,b) {
   alert (inv_count);
   }
Run Code Online (Sandbox Code Playgroud)

为什么是这样?我怎么能绕过它呢?

(菜鸟在这里)

javascript variables jquery

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

JavaScript中的深层嵌套函数

我找不到一个适当的例子来说明我对生活的热爱如何做到这一点,或者即使这是可能的.根据我对exmaples片段的拼凑理解,我提出了以下结构

         var t = function()
         {
             this.nestedOne = function()
             {
                 this.nest = function()
                 {
                     alert("here");
                 }
             }
         } 
         t.nestedOne.nest();
Run Code Online (Sandbox Code Playgroud)

然而,这显然不起作用(显然).如果有人能指出我正确的方向,我将不胜感激!

javascript

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

奇怪的行为取代"\"

我有这个问题,其中有一些strnig,除了其他东西之外的文字表达式"\\",我想替换它"\",当我尝试用string.replace替换它时,只重复第一次出现,如果我这样做使用正则表达式它根本不替换它

我在线检查了一些RegEx测试人员,据说我的代码没问题,返回我的意思,但我的代码根本不起作用

string.replace

example = "\\\\url.com\\place\\anotherplace\\extraplace\\";

example = example.replace("\\\\","\\");

returns example == "\\url.com\\place\\anotherplace\\extraplace\\";
Run Code Online (Sandbox Code Playgroud)

使用RegEx

example = Regex.Replace(example,"\\\\","\\");

returns example = "\\\\url.com\\place\\anotherplace\\extraplace\\";
Run Code Online (Sandbox Code Playgroud)

如果我使用文字是相同的情况(在替换函数参数上使用(@"\\", @"\")给出与上面相同的结果).

谢谢!

编辑:

我认为我的最终目标是令人困惑所以我会在这里更新它,我想要做的是:

输入: 保存字符串的变量:"\\\\url.com\\place\\anotherplace\\extraplace\\"

处理

保存字符串的输出变量"\\url.com\place\anotherplace\extraplace\" (因此我可以将其发送到ffmpeg并将其识别为有效路径)

c#

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

Facebook使用GraphAPI评论插件

我一直在寻找答案,但我发现很难在文档中找到关于这个问题的确定结果(完全有可能我错过了一些东西).

背景

我正在使用插件在我的网站上显示评论,我正在尝试添加"实时"功能.我知道Facebook没有像他们在网站上那样通过"默认"为插件提供自动刷新功能,所以我通过setInterval()函数中的ajax请求来模拟它.

有没有办法实现一个长ajax pull,push或另一个(更好?)解决方案来获取注释信息?,多个ajax请求解决方案工作正常,但它有点消耗.

非常感谢!

javascript ajax facebook facebook-graph-api

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

在Backbone js中提取逻辑

我正在开发一个Backbone应用程序Marionette,我需要一些帮助来组织代码中的逻辑.

目前我有几个视图,我处理非常相似的逻辑,我想抽象这个,以避免重复:

视图1

onRender: function() {
    var pluginData = this.$("selector1").plugin();
    var pluginResult = this.handlePluginData(pluginData);
    this.doSomethingWithResult1(pluginResult);
}
Run Code Online (Sandbox Code Playgroud)

视图2

onRender: function() {
    var pluginData = this.$("selector2").plugin();
    var pluginResult = this.handlePluginData(pluginData);
    this.doSomethingWithResult2(pluginResult);
}
Run Code Online (Sandbox Code Playgroud)

等等

注意:handlePluginData做同样的事情,doSomethingWithResultN它是不同的,但可以用一些参数抽象.

所以问题是:

  • 我应该如何抽象呢?我想从BaseView类中扩展并在那里添加逻辑,但我不知道是否有更好的方法.

  • 可以添加一个Model处理计算的自定义类吗?我已经使用rails了一段时间,我习惯于数据库中的模型===表.

非常感谢你!

javascript model-view-controller backbone.js marionette

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

提高查询速度:使用LIKE进行简单的SELECT

我继承了一个在django 1.5 中运行的大型遗留代码库,我当前的任务是加速站点的一部分,需要大约1分钟才能加载.

我做了一个应用程序的配置文件,得到了这个:

在此输入图像描述

罪魁祸首特别是以下查询(为简洁而剥离):

SELECT COUNT(*) FROM "entities_entity" WHERE (
  "entities_entity"."date_filed" <= '2016-01-21' AND (
    UPPER("entities_entity"."entity_city_state_zip"::text) LIKE UPPER('%Atherton%') OR
    UPPER("entities_entity"."entity_city_state_zip"::text) LIKE UPPER('%Berkeley%') OR
    -- 34 more of these
    UPPER("entities_entity"."agent_city_state_zip"::text) LIKE UPPER('%Atherton%') OR
    UPPER("entities_entity"."agent_city_state_zip"::text) LIKE UPPER('%Berkeley%') OR
    -- 34 more of these
  )
)
Run Code Online (Sandbox Code Playgroud)

基本上由一个大如查询的2场,entity_city_state_zip并且agent_city_state_zip这是character varying(200) | not null领域.

该查询被执行两次(!),同时18814.02ms每一次,和一个更多的时间更换COUNTSELECT占用额外的20216.49(我要去缓存的结果COUNT)

解释如下:

Aggregate  (cost=175867.33..175867.34 rows=1 width=0) (actual time=17841.502..17841.502 …
Run Code Online (Sandbox Code Playgroud)

django postgresql performance

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

jQuery UI拖放鼠标位置问题

我正在开发一个网站,您可以使用jQuery UI在页面中将不同的"模块"(带有信息的正方形)从一个地方移动到另一个地方.

我的问题是,当我将一个模块拖到一个可放置区域时,脚本识别的位置是模块的中间而不是鼠标位置.

我不知道是否有可能解决这个问题,但我还能想出来.

我做了这个小提琴:http : //jsfiddle.net/nicosunshine/vMpNA/3/显示问题.

先感谢您!.

javascript jquery drag-and-drop jquery-ui

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

在循环中向javascript的数组添加函数

我尝试在循环中创建具有函数的数组.但我认为没有关于封装的东西.

例如,此代码返回"y y".现场演示.

HTML

<div id="result"></div>
Run Code Online (Sandbox Code Playgroud)

使用Javascript

var json = {
            '1':'x',
            '2':'y'
           };
var my_array = [];
var div = document.getElementById('result');

for (var key in json) {
    my_array.push(function() { 
        div.innerHTML = div.innerHTML + ' ' + json[key];
    });
};

var length = my_array.length;

for (var i = 0; i < length; i++) {
  my_function = my_array[i];
  my_function();
}
Run Code Online (Sandbox Code Playgroud)

我该怎么办才能得到"x y"?

Tnx很多.

javascript

3
推荐指数
1
解决办法
575
查看次数

将outerHTML转义为变量

我希望得到outerHTML一个div#内容,将标签转义.text()为变量,如下所示:

var divContent = $('div#content')[0].text();
Run Code Online (Sandbox Code Playgroud)

但这会引发类型错误: TypeError: $(...)[0].outerHTML.text is not a function

有人可以建议最好的方法吗?

谢谢

javascript jquery

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