小编Dav*_*uth的帖子

Android Wear - 访问移动共享首选项

我在我的移动应用程序上使用SharedPreferences来保存数据(例如,用于从该数据创建回收站视图列表)

现在我添加了一个磨损模块,我试图在我的磨损设备上获得相同的列表.它能够从我的佩戴设备访问我手机上的共享偏好设置吗?

如果你的答案是否定的,最好的选择是什么?

android sharedpreferences wear-os

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

`require':没有要加载的文件 - test_helper(LoadError)

当我在生产模式下运行我的Rails应用程序时出现以下错误,但是当我在开发模式下运行我的应用程序时它工作正常.我可以在生产模式下使用任何宝石吗?

`require': No such file to load -- test_helper (LoadError)
Run Code Online (Sandbox Code Playgroud)

以下是代码的完整跟踪:

 /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:229:in `require': No such file to load -- test_helper (LoadError)
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:229:in `block in require'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:214:in `load_dependency'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:229:in `require'
from /home/nyros/Documents/Projects/DFL/Working/DFL/app/controllers/quarterly_export_statement_test.rb:1:in `<top (required)>'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:229:in `require'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:229:in `block in require'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:214:in `load_dependency'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:229:in `require'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:330:in `require_or_load'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:289:in `depend_on'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/activesupport-4.0.2/lib/active_support/dependencies.rb:207:in `require_dependency'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/railties-4.0.2/lib/rails/engine.rb:465:in `block (2 levels) in eager_load!'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/railties-4.0.2/lib/rails/engine.rb:464:in `each'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/railties-4.0.2/lib/rails/engine.rb:464:in `block in eager_load!'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/railties-4.0.2/lib/rails/engine.rb:462:in `each'
from /home/nyros/.rvm/gems/ruby-2.2.0@dfl/gems/railties-4.0.2/lib/rails/engine.rb:462:in `eager_load!' …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails production-environment ruby-on-rails-4

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

我应该测试模型之间的关联吗?

我应该为两个模型之间的关联编写测试吗?

我刚刚在我的第一个Rails项目中发现了这个代码,这似乎不正确,因为没有关联导致错误而不是失败.那么我将如何以及在何处正确测试它们?

require 'test_helper'

class VocabTest < ActiveSupport::TestCase

  test "Must have 'belongs_to user' association" do
    assert @vocab.user
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby unit-testing ruby-on-rails minitest rails-activerecord

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

RSpec 3 RuntimeError:“让声明在 `before(:context)` 挂钩中访问”

这是我的错误

Failure/Error: @queue = FactoryGirl.create(model.to_s.underscore.to_sym)
 RuntimeError:
   let declaration `model` accessed in a `before(:context)` hook at:
     /var/www/html/SQ-UI/spec/support/user_queue/asterisk_serialize_spec.rb:7:in `block (2 levels) in <top (required)>'

   `let` and `subject` declarations are not intended to be called
   in a `before(:context)` hook, as they exist to define state that
   is reset between each example, while `before(:context)` exists to
   define state that is shared across examples in an example group.enter code here
Run Code Online (Sandbox Code Playgroud)

这是破坏的代码

let(:model) { described_class } # the class that includes the concern

before(:all) do
  @queue …
Run Code Online (Sandbox Code Playgroud)

ruby rspec ruby-on-rails rspec-rails rspec3

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

TeamCity的构建模板和元跑者之间有什么区别?什么时候使用?

我尝试找到两者之间的差异,但没有找到单一的参考点,准确解释何时应该使用模板以及何时应该使用元运行器.或者它们是执行删除构建步骤冗余相同任务的两个工具,可以互换使用吗?

我的怀疑源于这样一个事实,即使用元运行程序来指定跨不同构建配置的重复构建步骤,但模板也可以.那么何时使用哪个?

这是我发现的最接近的:

虽然模板可用于创建和维护非常相似的构建配置,但Meta-Runners可用于执行相同构建步骤的构建配置.此外,构建配置只能基于一个模板,但它可以使用多个元运行器.

http://www.scmgalaxy.com/scm/build-workflow-management/teamcity/build-configuration-templates-in-teamcity.html

但这并不能解释何时使用哪个.

teamcity continuous-integration

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

如何安全地查看 Django REST 框架身份验证中的请求正文?

我已经实现了一个网络钩子。调用者提供共享秘密。它们连接请求 URL 和正文,使用密钥对其进行签名,并在标头中提供签名。为了验证签名,我需要重复该过程并将我获得的签名与调用者获得的签名进行比较。

我正在使用 Django REST 框架。我正在检查自定义中的签名Authentication。框架以请求作为参数来调用Authentication的方法。authenticate我可以从 获取请求正文request.stream.read()。但是,这会消耗流,从而阻止框架为我解析它:当框架调用视图时,请求没有data像通常那样的属性。

request.stream不允许我这样做seek(0)。该请求不允许我用倒带流(例如StringIO. 我当前的解决方法是将主体存储在视图中request.auth并自己在视图中解析它,这有效但很丑陋。

有没有办法在 中安全地访问请求正文Authentication

这是有效的版本:

myapp/authentications.py

import hmac
from hashlib import sha1
from rest_framework.authentication import BaseAuthentication
from rest_framework.exceptions import AuthenticationFailed

class WebhookAuthentication(BaseAuthentication):
    def authenticate(self, request):
        actual_signature = request.META['X-Vendor-Signature']
        body, expected_signature = self.expected_signature(request)
        if actual_signature != expected_signature:
            raise AuthenticationFailed("Request X-Vendor-Signature did not match expected signature")
        return None, body  # Hack: preserve the …
Run Code Online (Sandbox Code Playgroud)

python django python-2.7 django-rest-framework

6
推荐指数
0
解决办法
608
查看次数

调试:IE6 + SSL + AJAX +发布表单= 404错误

设置:
有问题的程序尝试通过AJAX调用将表单数据发布到与调用者相同的程序包中包含的目标过程。这是对使用安全连接(HTTPS)的站点完成的。这里使用的技术是PLSQLDOJO JavaScript库。开发工具基本上是文本编辑器

代码段:

> function testPost() {  
>>    dojo.xhrPost( {  
             url: ''dr_tm_w_0120.test_post'',  
             form: ''orgForm'',  
             load: testPostXHRCallback,  
             error: testPostXHRError  
            });  
      }  

> function testPostXHRCallback(data,ioArgs) {  
>>          alert(''post callback'');  
          try{  
          dojo.byId("messageDiv").innerHTML = data;  
          }  
          catch(ex){  
                if(ex.name == "TypeError")  
                {  
                  alert("A type error occurred.");  
                }  
          }   
          return data;  
       }         
> 
function testPostXHRError(data, ioArgs) {    
>>          alert(data);  
          alert(''Error when retrieving data from the server!'');  
          return data;  
       }    
Run Code Online (Sandbox Code Playgroud)

问题:
使用IE6(整个用户库都使用)时,从服务器发送回的响应是404错误。

观察结果:
该程序在Firefox中运行良好。
调用过程不能以同一包中的任何过程为目标。
调用过程可以针对外部站点(http,https)。
包中其他不是表单数据过帐的AJAX调用都可以正常工作。
我搜索了互联网,并咨询了高技能的团队成员,但没有发现任何令人满意的解决方案。
* …

debugging ajax ssl internet-explorer internet-explorer-6

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

数据库家伙问:面向对象的设计理论?

我在设计数据库的过程中工作了很长时间,而且这些天我也在使用C#.OO对我来说很有意义,但我并不觉得我对OO设计的深层理论有很好的基础.

在数据库领域,关于如何设计数据库结构有很多理论,主要概念是规范化.规范化直接控制数据库的结构,并在某种程度上决定如何在数据库中排列实体.

在如何设计面向对象程序的结构方面是否有任何类似的概念?

我所要达到的是一个或多个潜在的理论原则,它自然地引导开发人员进入解决特定问题的"正确"设计.

我在哪里可以找到更多信息?
我应该读一下上班的工作吗?

更新:

感谢大家的回答.我正在阅读的内容似乎没有"OO设计的大理论",但是有一些重要的原则 - 主要是设计模式的例子.

再次感谢您的回答:)

oop solid-principles package-design

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

使用一个方法做不止一件事是否违反了单一职责原则?

出于我的目的,我需要在 xml 文件中搜索特定节点,如果找到,则将其删除。我应该将搜索功能提取到其自己的方法中,并将删除功能提取到其自己的方法中吗?这样做似乎更昂贵,因为我将搜索 xml 文件一次以查看它是否存在,然后再次搜索以将其删除。如果我将这两个功能合并到一个方法中,我可以在找到它时立即将其删除。我在这里理解的SRP正确吗?

oop single-responsibility-principle solid-principles

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

如何实现原型模式?

原型模式的目标是通过降低创建成本来克隆对象.这是一个例子:

class Complex {
    int[] nums = {1,2,3,4,5};
    public Complex clone() {
        return new Complex();//this line create a new object, so is it violate the objective             of prototype ?//
    }
}

class Test2 {
   Complex c1 = new Complex();
   Complex makeCopy() {
      return (Complex)c1.clone();// Is it actually create a new object ? based on the clone method in Complex class? //
   }
   public static void main(String[] args) {
       Test2 tp = new Test2();
       Complex c2 = tp.makeCopy();
   }
}
Run Code Online (Sandbox Code Playgroud)

我认为这是深刻的复制.所以,有人可以帮我解决这个问题吗?

java design-patterns prototype-pattern

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