小编use*_*505的帖子

Cordova/Phonegap Android - Java/Ant问题在构建?

我一直在这个网站上,所以请原谅我,如果其他人发布了这个,但我找不到任何可以解决我的问题.

我正在使用Mac.通过我的IOS构建,我完全没有问题.

但是对于Android,我"现在"有一些问题,当我运行时,cordova build android 我得到以下错误,

/Users/x/Library/Android/sdk/tools/ant/build.xml:601: The following error occurred while executing this line:
/Users/x/Library/Android/sdk/tools/ant/build.xml:720: The following error occurred while executing this line:
/Users/x/Library/Android/sdk/tools/ant/build.xml:734: Class not found: javac1.8

/Users/x/Desktop/One/platforms/android/cordova/node_modules/q/q.js:126
                throw e;
                      ^
Error code 1 for command: ant with args: debug,-f,/Users/x/Desktop/test/platforms/android/build.xml,-Dout.dir=ant-build,-Dgen.absolute.dir=ant-gen

ERROR building one of the platforms: Error: /Users/x/Desktop/test/platforms/android/cordova/build: Command failed with exit code 8
You may not have the required environment or OS to build this project
Run Code Online (Sandbox Code Playgroud)

我使用'now'这个词,因为这个错误,我认为我已经修复了它并且它正在工作但我没有改变PATHS任何地方在我的终端,我可以运行javac - version,这给了我javac 1.8.0_25.所以它可以不同看java. …

java ant android cordova

9
推荐指数
2
解决办法
3万
查看次数

如何修改认证相关的flash信息的外观?

我在尝试将 AuthError 上的 Flash 元素从默认更改为错误时没有运气?

我只是想看看我是否可以改变它,但现在它把我逼上了墙,因为我似乎无法改变它?

这就是我在 AppController 中加载我的身份验证的方式,

    $this->loadComponent('Auth', [
        'authError' => 'Did you really think you are allowed to see that? -2',
        'authenticate' => [
            'Form' => [
                'fields' => ['username' => 'email', 'password' => 'password']
            ]
        ],
        'loginAction' => [
            'controller' => 'Users',
            'action' => 'Login'
        ],
        'loginRedirect' => [
            'controller' => 'Pages',
            'action' => 'LoginPage'
        ],
        'logoutRedirect' => [
            'controller' => 'Pages',
            'action' => 'HomePage'
        ]
    ]);
Run Code Online (Sandbox Code Playgroud)

因此,当我转到不允许的页面时,它会显示 authError 消息,但使用任何类/ID 在Element/Flash/default.ctp我想将其更改为仅使用与error.cpt

我已经调试了 Auth …

php authentication cakephp view cakephp-3.0

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

CakePHP 3查找全部包含NULL数据,什么都不显示?

UPDATE

这是所有选择后SQL的连接,

FROM users Users 
LEFT JOIN userinfos Userinfos ON Userinfos.id = (Users.userinfo_id) 
INNER JOIN offices Offices ON Offices.id = (Userinfos.office_id)
Run Code Online (Sandbox Code Playgroud)

好吧,我有一个使用CakePHP 3的数据库(MySQL)设置,用户表具有在另一个表中保存的扩展信息.

另一个表也扩展了办公室/地址信息但是默认设置为NULL,所以我想将它包含在'contains'调用中,但是当它为空时不会返回用户数据?

所以这就是我目前使用的,

  $UsersTable->find('all')
             ->contain(['Userinfos','Userinfos.Offices'])
             ->toArray();
Run Code Online (Sandbox Code Playgroud)

但是,办公室(officeinid表中的office_id字段)并不总是设置,但我仍然希望它返回所有用户,即使他们没有办公室设置.

所以我试过了,

  $UsersTable->find('all')
             ->contain([
                  'Userinfos',
                  'Userinfos.Offices'
              ])
             ->where(['Userinfos.office_id IS' => NULL])
             ->toArray();
Run Code Online (Sandbox Code Playgroud)

也,

  $UsersTable->find('all')
             ->contain([
                  'Userinfos',
                  'Userinfos.Offices' => 
                          function($q) {
                             return $q->where(['Userinfos.office_id IS' => NULL]);
                          }
              ])
            ->toArray();
Run Code Online (Sandbox Code Playgroud)

$UsersTable变量被设置为

   $UsersTable = TableRegistry::get('Users');
Run Code Online (Sandbox Code Playgroud)

如果我Userinfos.Offices从包含条件中删除它,那么它将返回所有当前用户.但是,我如何调用这些额外的数据/信息,以便我可以访问Office信息,例如,如果设置了位置名称?

*我可能没有清楚地解释自己,如果有什么我可以更好地解释,请告诉我,谢谢.

cakephp cakephp-3.0

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

CakePHP 3,关联数据被保存为新的不更新?

更新

根据要求,这是$this->request->data我的表格,

'office' => 'LON-test33',
'phone' => '456456456',
'address' => [
    'addline1' => '1 test0009 st',
    'addline2' => 'p09987',
    'addline3' => 'test9999',
    'postcode' => 'p888',
    'country_id' => '226'
],
Run Code Online (Sandbox Code Playgroud)

所以办公室,电话是我办公室表的一部分,地址是整个地址表。

我还做了一个测试,看看它是否在模型中,只是尝试通过提供一个 ID 来更新地址表。哪个有效,所以我认为我的模型很好。所以我在想是与 Office 模型有关还是我的代码有问题?

谢谢,


所以我正在使用 CakePHP 3.0.something ....

我正在尝试更新与办公室表相关联的数据的地址。但是,当我更新办公室时,地址被保存为一个全新的记录?不知道为什么?

这是我目前正在做的事情,

$OfficeTable = TableRegistry::get('Offices');
$CurrentOffice = $OfficeTable->get($OfficeID);

$OfficeTable->patchEntity($CurrentOffice, $this->request->data, ['associated' => ['Addresses']]);

debug( $OfficeTable->save($CurrentOffice) );
Run Code Online (Sandbox Code Playgroud)

Associated在 patchEntity 中设置似乎没有什么区别,更新后的地址被保存,而是作为新记录。然后将此新记录 ID 放入 Office 表的“address_id”字段中。

但是为什么要将这个“新的/编辑过的”地址添加为新记录而不更新关联的 id 记录?

现在我一直在阅读文档,并形成我所理解的,如果找不到记录,它会重新记录吗?但是,我已经调试了保存调用,并且在 office 和 address 上都将“[new]”设置为 false。那么为什么要更新我的办公室,却在告诉我它不是新地址时创建一个新地址呢?

所以要补充的是,在我的调试调用的底部有一个 '[original]',它包含它应该更新的记录的旧地址 ID。

那么我做错了什么?

如果我没有正确解释自己(我有阅读障碍),那么请告诉我,或者如果有任何遗漏我可以更新 …

cakephp cakephp-3.0

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

标签 统计

cakephp ×3

cakephp-3.0 ×3

android ×1

ant ×1

authentication ×1

cordova ×1

java ×1

php ×1

view ×1