我正在使用MVVM并希望将我的viewModel分配给Controllers init上的viewController。我以为我会这样做:
DECLARE
qry VARCHAR2 (1000);
chk NUMBER := 0;
BEGIN
qry := 'insert into your_table ';
FOR rec
IN (SELECT 'SELECT * FROM ' || ACTIVE_POD || '.userservice' AS stmnt
FROM active_tables)
LOOP
IF chk <> 0
THEN
qry := qry || ' union all' || rec.stmnt;
ELSE
qry := qry || rec.stmnt;
END IF;
chk := chk + 1;
END LOOP;
qry := qry || ';';
DBMS_OUTPUT.put_line (qry);
END;
然而我收到错误:
在从初始化程序
返回之前,不会在所有路径上调用Super.init
这不是正确的路线吗?当需要一个对象时,我如何才能正确初始化viewModel,但它必须先执行网络请求?用空白对象实例初始化?
由于
编辑:这就是我现在正在尝试的
class LoginViewController: UIViewController, UITextFieldDelegate {
init(loginViewModel: LoginViewModel) {
self.loginViewModel = loginViewModel
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
fatalError("init(coder:) has not been implemented")
}
答案 0 :(得分:1)
作为最佳做法,
第1步:
{ "_id" : { "func" : "7", "percen" : 30 } }
{ "_id" : { "func" : "5", "percen" : 23.1 } }
{ "_id" : { "func" : "8", "percen" : 27.8 } }
{ "_id" : { "func" : "6", "percen" : 32.1 } }
{ "_id" : { "func" : "1", "percen" : 31.6 } }
{ "_id" : { "func" : "2", "percen" : 35 } }
{ "_id" : { "func" : "3", "percen" : 7.1 } }
{ "_id" : { "func" : "4", "percen" : 31.6 } }
第2步:
db.docs3.aggregate({
$unwind:'$attribute'
},
{
$group:{
_id:{
func:"$attribute.functionName",
percen:"$attribute.percentage"
}
}
},
{
$match:{
"attribute.percentage":{
$gt:25
}
}
})
第3步:实现initWithModel函数
答案 1 :(得分:0)
如果有效,请尝试添加:
convenience init() {
self.init(loginViewModel: nil)
}
init(loginViewModel: LoginViewModel?) {
self.loginViewModel = loginViewModel
super.init(nibName: nil, bundle: nil)
}