小编zna*_*nat的帖子

没有调用SQLiteOpenHelper"onCreate"?(数据库不存在)

从片段我实例化这种方式

fmdata = new FileManagerData(getActivity());
Run Code Online (Sandbox Code Playgroud)

以下课程.我不明白为什么没有调用onCreate()并且我的数据库没有被创建.

public class FileManagerData {
public static final String TAG = FileManagerData.class.getSimpleName();;


Context context;
DBHelper dbHelper;

public FileManagerData (Context context){
    this.context = context;
    dbHelper = new DBHelper();
}

private class DBHelper extends SQLiteOpenHelper{

    private static final String DB_NAME = "filename.db";
    private static final String DB_SQL = "filename.sql";
    private static final int DB_VERSION = 1; // internal number

    public DBHelper() {
        super(context, DB_NAME, null, DB_VERSION);  
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
            // this is NEVER …
Run Code Online (Sandbox Code Playgroud)

sqlite android sqliteopenhelper

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

RxJava - 如何获取列表的第一个元素并将其作为Observable返回

让我们来看看这个:

Observable<List<UserProfile>> findUser =service.getUserProfiles()
Run Code Online (Sandbox Code Playgroud)

如何对其进行转换,使其返回第一个元素作为Observable(而不是仅包含第一个元素的Observable列表).我试过first()takeFirst(),但它仍然会返回一个列表.

reactive-programming rx-java

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

如何将React组件作为prop传递

我正在使用react-semantic-ui Modal对象.打开模态的对象是道具.

 <Modal
       trigger=<Button>Text</Button>
       otherProp=...
   >
  </Modal>
Run Code Online (Sandbox Code Playgroud)

我想在另一个组件中嵌入Modal:

export default class Confirm extends Component {

    render() {
        return (
            <Modal
                trigger={this.props.trigger} /* here */
              >    
                <Modal.Content>
                    ...
                </Modal.Content>
                <Modal.Actions>
                    ...
                </Modal.Actions>
            </Modal>
        )
    }
}
Run Code Online (Sandbox Code Playgroud)

如何将JSX代码(<Button>Text</Button>)作为要呈现为模态道具的道具传递?

javascript reactjs semantic-ui semantic-ui-react

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

如何为通过入口公开的服务指定前缀

我想通过一个入口公开各种服务。

rules:
  - http:
      paths:
      # The path is the URL prefix for the service, e.g. /api/* or just /*
      # Note that the service will receive the entire URL with the prefix
      - path: /service1/*
        backend:
          serviceName: service1
          servicePort: 5000
      - path: /service2/*
        backend:
          serviceName: service2
          servicePort: 5000
Run Code Online (Sandbox Code Playgroud)

问题是包括前缀在内的整个URL都传递给了基础服务,因此所有请求都返回404错误:service1而api不响应/service1/some/path而是直接响应/some/path

如何为基础服务指定前缀?

更新

我尝试如下使用rewrite-target。请求被发送到rasa-nlu服务,但是它们都触发404,因为rasa-nlu仍然会收到请求/nlu

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress
  annotations:
    ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - http:
      paths:
      - path: …
Run Code Online (Sandbox Code Playgroud)

kubernetes google-kubernetes-engine

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

赋值运算符和深层复制

我正在学习C++,有些东西我没有得到有关赋值运算符的东西.据我了解,它们应该提供对象的深层副本.这是一个例子

Test::Test(int i){
    value = i;
}

Test& Test::operator=(const Test& rhs){
    value = rhs.value;
    return *this;
}
Run Code Online (Sandbox Code Playgroud)

现在:

Test* t1 = new Test(1);
Test* t2 = t1;  //t2 should be now a deep copy of t1
t1->value = 2;
cout << t1->value;
cout << t2->value;
Run Code Online (Sandbox Code Playgroud)

输出是22但我预计'21'.我在这里失踪的显而易见的事情是什么?

c++

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

如何模拟调用onError的改进服务observable?

我正在测试这段代码.

service.getProducts()
            .subscribeOn(Schedulers.io())
            .observeOn(AndroidSchedulers.mainThread())
            .subscribe(new Subscriber<Result<Catalog<SoajsProductPreview>>>() {

                @Override
                public void onError(Throwable e) {
                    view.showErrorView(e);
                }

                @Override
                public void onNext(Result<Product>  products) {
                   view.showProducts(products)
                }

                @Override
                public void onCompleted() {}
            });
Run Code Online (Sandbox Code Playgroud)

测试view.showProducts()模拟服务返回结果的效果很好.我做

when(service.getProducts().thenReturn(someObservable);
Run Code Online (Sandbox Code Playgroud)

现在我想测试view.ShowErrorView()当服务抛出错误时调用但我找不到这样做的方法:

显然以下不编译

when(service.getProducts().thenReturn(someException); 
Run Code Online (Sandbox Code Playgroud)

这会立即引发异常,但不会调用订阅者的onError方法

when(service.getProducts().thenReturn(someException); 
Run Code Online (Sandbox Code Playgroud)

我该怎么Subscriber.onError()叫?

unit-testing mockito rx-java rx-android retrofit2

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

继承 - 如何根据类设置静态变量?

我有一个带有静态变量的类层次结构:

class Shape{
public:
    static string name;
}

class Rectangle: public Shape{

}
Run Code Online (Sandbox Code Playgroud)

我想name根据班级设定.所以Shape::name应该是"形状",Rectangle::name应该是"矩形"

我所做的是初始化每个.cpp实现文件中的静态变量.所以在Shape.cpp中:

string Shape::name = "Shape";
Run Code Online (Sandbox Code Playgroud)

在Rectangle.cpp中:

string Shape::name = "Rectangle";
Run Code Online (Sandbox Code Playgroud)

链接器不喜欢这样,并抱怨有一个重复的符号.那我怎么能实现呢?

注意:我想坚持使用初始化列表的构造函数(在.cpp中没有实现)

c++

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

TypeError:object不是async.waterfall的函数

我是一个node.js noob试图使用async.waterfall.我有问题从瀑布数组的最后一个任务到最终的回调方法.

在下面的示例中,我将回调传递给doSomethingAsync,但是当我想在内部执行回调时,doSomethingAsync我得到了TypeError: object is not a function.我不明白.谢谢你的想法

编辑:

瀑布的第一项任务是创建一个Mongo文档.save()函数的回调是function(err){...}.

var session = createSession(); // session is a Mongoose model
async.waterfall([

    function (callback) {
        ...
        session.save(callback); // Model.save(function(err){...}
    },

    function (callback) {
        doSomethingAsync(session, callback)
    }

], function (err, session) {


});

function doSomethingAsync(session, callback){
    doSomething(function(err){
        callback(err,session);
    }
}


 callback(err,session);
 ^
 TypeError: object is not a function
Run Code Online (Sandbox Code Playgroud)

javascript asynchronous node.js

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

是否每次需要值时都会调用静态枚举初始值设定项?

我正在考虑使用带有静态初始化程序的枚举,如下所示:

public enum MyEnum{
    ...
    private static HashMap<X, Y> features;

    static {
        features.put(X, new (Y));
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

每当我需要一个值时,HashMap会重新初始化吗?

java hashmap

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

如何协调 Terraform 状态与现有存储桶?

使用 Terraform 11.14 我的 terraform 文件包含以下资源:

resource "google_storage_bucket" "assets-bucket" {
  name          = "${local.assets_bucket_name}"
  storage_class = "MULTI_REGIONAL"
  force_destroy = true
}
Run Code Online (Sandbox Code Playgroud)

并且这个存储桶已经被创建(它存在于基于先前的基础设施上apply)但是状态(远程上gcs)不一致并且似乎不包括这个存储桶。结果,terraform apply失败并出现以下错误:

google_storage_bucket.assets-bucket: googleapi: Error 409: You already own this bucket. Please select another name., conflict
Run Code Online (Sandbox Code Playgroud)

我该如何协调国家?(terraform refresh没有帮助)

编辑

根据 @ydaetskcoR 的回应,我做了:

terraform import module.bf-nathan.google_storage_bucket.assets-bucket my-bucket
Run Code Online (Sandbox Code Playgroud)

输出:

module.bf-nathan.google_storage_bucket.assets-bucket: Importing from ID "my-bucket"...
module.bf-nathan.google_storage_bucket.assets-bucket: Import complete! Imported google_storage_bucket (ID: next-assets-bf-nathan-botfront-cloud)
module.bf-nathan.google_storage_bucket.assets-bucket: Refreshing state... (ID: next-assets-bf-nathan-botfront-cloud)

Error: module.bf-nathan.provider.kubernetes: 1:11: unknown variable accessed: var.cluster_ip in: …
Run Code Online (Sandbox Code Playgroud)

google-cloud-storage terraform terraform-provider-gcp

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