小编dav*_*ode的帖子

Google 地图 v3:使用自定义标记进行聚类

我正在尝试使用MarkerClusterer对地图上的标记进行聚类。问题是我没有使用默认标记(google.maps.Marker),而是使用从google.maps.OverlayView继承的自定义类。不幸的是,该库似乎是在假设使用基本标记的情况下开发的,实际上我得到了错误,因为我的类没有实现google.maps.Marker 中定义的方法。是否可以通过保留我的自定义标记来使用MarkerClusterer

编辑:这比我预期的要容易得多,我通过在我的自定义类中实现 2 个方法来解决:

setVisible()getPosition()

为了帮助他人,以下是我的完整界面(没有完整实现):

BFPushpin = function(config) 
{
    this.setMap(config.map);
    this.set("position", config.position);
    // other settings...
};

// my class extends google.maps.OverlayView
BFPushpin.prototype = new google.maps.OverlayView();

BFPushpin.prototype.getBounds = function() 
{
    return new google.maps.LatLngBounds(this.position, this.position); 
};

BFPushpin.prototype.getPoint = function() 
{
    var bounds = this.getBounds();
    var projection = this.getProjection();
    var sw = projection.fromLatLngToDivPixel(bounds.getSouthWest());  
        var ne = projection.fromLatLngToDivPixel(bounds.getNorthEast()); 

    return new google.maps.Point(sw.x, ne.y);
};

BFPushpin.prototype.getSuperContainer = function()
{
    var panes …
Run Code Online (Sandbox Code Playgroud)

javascript google-maps google-maps-api-3

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

google.maps.places.Autocomplete本地化

在我的应用程序中,我正在使用google.maps.places.Autocomplete.getPlace()以获取诸如城市名称之类的信息,问题是检索到的信息是根据language导入库时通过查询字符串传递的" "参数进行本地化的,而我希望始终使用它们在英语中,同时保留自动完成和渲染地图中的本地化(即,如果用户是意大利语,他将在UI中看到例如" Venezia ",但在我的客户端api中我会得到" 威尼斯 ").. . 我能怎么做?

google-maps autocomplete google-maps-api-3

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

AngularJS测试指令与Karma,Jasmine和ngHtml2JsPreprocessor:模板未加载

我正在测试使用Karma + Jasmine和ngHtml2JsPreprocessor插件的自定义AngularJS指令以服务我的指令模板,但我不明白为什么我的指令似乎无法访问模板(编译的元素为空).我用templateUrl这种方式定义了指令:

templateUrl: 'templates/angular/mywidget.html'
Run Code Online (Sandbox Code Playgroud)

我的Karma配置如下(相关部分):

        basePath: '../../main/webapp/static/',
        files: [
            {pattern: 'libs/angular/angular.js', watch: false},
            {pattern: 'libs/angular-resource/angular-resource.js', watch: false},
            {pattern: 'libs/angular-mocks/angular-mocks.js', watch: false},
            {pattern: 'libs/angular-ngkit/js/ngkit.js', watch: false},
            {pattern: 'libs/jquery/dist/jquery.js', watch: false},
            'templates/angular/*.html',
            'js/angular/**/*.js',
            '../../../test/js/spec/angular/*.js'
        ],
        preprocessors: {
            'templates/angular/*.html': ['ng-html2js']
        },
        ngHtml2JsPreprocessor: {
            moduleName: 'templates'
        },
        browsers: [
            'PhantomJS'
        ],
        plugins: [
            'karma-phantomjs-launcher',
            'karma-jasmine',
            'karma-ng-html2js-preprocessor'
        ],
Run Code Online (Sandbox Code Playgroud)

在我的测试中:

beforeEach(module('templates'));
beforeEach(module('ngResource'));
beforeEach(module('mywidget'));
Run Code Online (Sandbox Code Playgroud)

"有趣"部分是,如果我测试模板缓存,模板将被加载和编译:

beforeEach(inject(function(_$templateCache_) {
    var template = _$templateCache_.get('templates/angular/mywidget.html');
}));
Run Code Online (Sandbox Code Playgroud)

模板存在!为什么我的指令不能使用它?(在浏览器中它完美地工作).如果我在我的指令中替换templateUrl为内联template,它会在测试中正确呈现...但是我必须使用外部模板,不能接受将其内联...我被卡住了!有什么好主意吗?

更新(到目前为止我尝试过):

  1. 写一个没有逻辑的新指令(以排除问题在实现中),简单地说:

    angular.module('modulename', []). directive('foo', …

jasmine angularjs karma-runner karma-jasmine

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

Flutter:当字段在 ListView 中不可见时,不会调用 TextFormField 验证器

我在这个问题上也遇到了同样的问题,我通过遵循提供的建议解决了(我setState()在 中调用onChanged)...问题是,在我的情况下validator,如果该字段在视图中不可见(如果您滚动视图直到它不再显示),这样我就可以在无效状态下提交表单。

我应该如何触发当前未显示在 中的字段的验证ListView

更新:

以下是该问题的简单演示(我使用它在一个独立的简单应用程序中进行调试):

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyForm extends StatefulWidget {
  @override
  State createState() {
    return _MyFormState();
  }
}

class _MyFormState extends State<MyForm> {
  static final GlobalKey<FormState> _formKey = GlobalKey<FormState>();
  final Map<int, String> model = Map<int, String>();

  @override
  void initState() {
    print('initState()');
    for (int i = 0; i < 20; i++) {
      model[i] = null;
    }
    super.initState();
  }

  String validate(String value) {
    return value.isEmpty ? …
Run Code Online (Sandbox Code Playgroud)

dart flutter

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

在测试期间禁用特定的Django中间件

如何在测试期间禁用特定的中间件(我编写的自定义中间件)?

django django-middleware django-testing

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

CSS 3假三维立方体旋转2盒之间

我用css实现了一个翻转旋转:

.flip-card {
    position: relative;
    z-index: 1;
    -webkit-perspective: 1000px;
    -moz-perspective: 1000px;
    -o-perspective: 1000px;
    perspective: 1000px;
}

.flip-card-content {
    width: 100%;
    height: 100%;
    -webkit-transform-style: preserve-3d;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transform-style: preserve-3d;
    -moz-transition: all 0.5s ease-in-out;
    -o-transform-style: preserve-3d;
    -o-transition: all 0.5s ease-in-out;
    transform-style: preserve-3d;
    transition: all 0.5s ease-in-out;
}

.flip-card.flip-x.flipped .flip-card-content,
.flip-card.flip-x .flip-card-side.flip-card-back {
    -webkit-transform: rotateX(180deg);
    -moz-transform: rotateX(180deg);
    -o-transform: rotateX(180deg);
    transform: rotateX(180deg);
}

.flip-card.flip-x-inverse.flipped .flip-card-content,
.flip-card.flip-x-inverse .flip-card-side.flip-card-back {
    -webkit-transform: rotateX(-180deg);
    -moz-transform: rotateX(-180deg);
    -o-transform: rotateX(-180deg);
    transform: rotateX(-180deg);
}

.flip-card.flip-y.flipped .flip-card-content,
.flip-card.flip-y .flip-card-side.flip-card-back { …
Run Code Online (Sandbox Code Playgroud)

html css css3 css-animations

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

"OSError:dlopen(libSystem.dylib,6):找不到图像"(OS X + macports + Celery 3.1.7)

我刚刚通过pip(1.5)将celery更新到最新版本(3.1.7),但是我得到了一个致命的异常,我很快就会尝试导入该库.通过运行:

from celery import Celery 在shell中我得到:

File "<console>", line 1, in <module>
  File "/Users/davidezanotti/CygoraPythonEnv/lib/python2.7/site-packages/celery/__init__.py", line 130, in <module>
    from .five import recreate_module
  File "/Users/davidezanotti/CygoraPythonEnv/lib/python2.7/site-packages/celery/five.py", line 51, in <module>
    from kombu.five import monotonic
  File "/Users/davidezanotti/CygoraPythonEnv/lib/python2.7/site-packages/kombu/five.py", line 47, in <module>
    libSystem = ctypes.CDLL('libSystem.dylib')
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: dlopen(libSystem.dylib, 6): image not found
Run Code Online (Sandbox Code Playgroud)

我在OS X 10.8.5上使用带有VirtualEnv和macports的python 2.7.6

我明白问题是缺少底层依赖("libSystem.dylib"),但我不知道如何解决这个问题

(在/ usr/lib /下我可以在我的机器上找到libSystem.dylib)

python macos macports virtualenv

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

使用Docker进行Web开发的适当工作流程

我今天开始学习Docker,并且我已经能够在几个小时后基于Python堆栈创建我的第一个自定义图像ubuntu:14.04,通过试验Dockerfile构建和修改现有图像并使用commit命令保存它.

Dockerfile的内容如下:

FROM ubuntu:14.04
MAINTAINER Davide Zanotti <***@gmail.com>
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y \
        software-properties-common \
        build-essential \
        automake \
        checkinstall \
        git \
    && add-apt-repository -y ppa:fkrull/deadsnakes && apt-get update && apt-get install -y python3.5 \
    && cd /usr/bin && ln -s python3.5 python \
    && apt-get clean && rm -rf /var/lib/apt/lists/*
Run Code Online (Sandbox Code Playgroud)

到目前为止这么好,但现在我想知道哪个应该是使用Docker进行Web开发的正确工作流程!

我使用Flask(docker hub,git …

python git docker

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

使用SQLAlchemy连接到SQL Server

我正在尝试使用SQLALchemy和pyodbc连接到SQL Server Express数据库,但我不断收到错误:

(pyodbc.Error)('IM002','[IM002] [unixODBC] [驱动程序管理器]未找到数据源名称,并且未指定默认驱动程序(0)(SQLDriverConnect)')

我真的不明白我的引擎网址是错还是其他什么.我的方案如下:

  • 我在Mac上
  • 我有一个docker容器(基于带有和的Debian图像),我的python应用程序尝试连接到...unixodbcunixodbc-dev
  • 一个VirtualBox的虚拟机上运行的Windows 8与SQL Express的2014 ...

我使用SQL Server身份验证为SQL Express配置了一个用户:

  • user:ar_user
  • 密码:ar_psw

...然后:

  • 我将TCP端口配置为1433并禁用动态端口(SQL Server配置管理器>网络配置>协议).
  • 我关闭了Windows防火墙.
  • 我为运行windows8的VM使用了仅限主机的适配器

现在...

可以从主机(我的mac)访问VM,因为:

ping -c 3 vm-ip
Run Code Online (Sandbox Code Playgroud)

成功!

但是,虽然我尝试了用户,密码,IP,服务器名称和端口的所有可能的排列:

  • 'mssql+pyodbc://ar_user:ar_psw@vm-ip/master'
  • 'mssql+pyodbc://ar_user:ar_psw@vm-ip:1433/master'
  • 'mssql+pyodbc://IE10WIN8\\SQLEXPRESS'
  • 'mssql+pyodbc://ar_user:ar_psw@IE10WIN8\\SQLEXPRESS'
  • 'mssql+pyodbc://ar_user:ar_psw@IE10WIN8\\SQLEXPRESS:1433'
  • 'mssql+pyodbc://ar_user:ar_psw@IE10WIN8\\SQLEXPRESS:1433/master'

...还有很多!

我总是得到"数据源未找到错误".我该怎么办?

ps:即使在docker容器中,vm也可以ping通!

更新(已解决但不是100%):

我这样解决了:

我用/etc/odbcinst.ini这种方式配置了FreeTDS驱动程序:

[FreeTDS]
Description = TDS driver (Sybase/MS SQL)
Driver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libtdsS.so
client charset = UTF-8
Run Code Online (Sandbox Code Playgroud)

并在/etc/freetds/freetds.conf:

[global]
tds version = …
Run Code Online (Sandbox Code Playgroud)

sql-server odbc sqlalchemy unixodbc pyodbc

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

SQLAlchemy列类型比较

我正在对不同数据库类型进行大量数据库自省,并且我希望能够比较两种列类型。例如,Boolean使用将定义为type 的字段declarative_base()转换TINYINTMySQL Dialact 的特定字段,因此进行如下检查:

model_a.__table__.columns['col'].type == model_b.__table__.columns['col'].type
Run Code Online (Sandbox Code Playgroud)

不起作用,并且这一个都不:

(type_a == type_b) or issubclass(type_b, type_a)
Run Code Online (Sandbox Code Playgroud)

如何比较两列数据类型为“亲和力”?(通过检查代码,我看到列类型Comparator附加了一个类,但是我不确定它是否有帮助以及如何使用它)也可以在SQLAlchemy配置中强制使用列类型(避免使用方言-具体转换)?

python sql sqlalchemy

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