我只有一台设备 (HTC HD Deside) 用于测试我的应用程序以及何时我想通过以下方式获取 GPS 数据
locationManager.requestLocationUpdate(criteria,0,0,this); //critera = "gps"
Run Code Online (Sandbox Code Playgroud)
我的 GPS 图标出现在通知栏中,但它“闪烁”,好像这意味着我的设备正在寻找并获取 GPS 数据。因此,我的应用程序在成功从 GPS 获取数据之前需要太多的“思考”时间(约 100 万到 300 万!)(在图标停止闪烁之前)
所以,我不得不创建一个像这样的 while 指令:
do{
lastLocation = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
}while(System.currentTimeMillis() - lastLocation.getTime() > 5000);
Run Code Online (Sandbox Code Playgroud)
谢谢,我肯定会得到一个最近的位置,但我失去了太多时间。
有什么问题?是硬件吗?我能找到更好的方法来解决这个问题吗?我可以“快速”获取 GPS 数据吗?:/ (1~5 秒)
从symfony 4,我想创建一个全局参数,并从控制器获取该参数的值。
此参数是服务器中另一个应用程序的路径。因此,我认为应在.env文件中添加参数。但是如何从控制器获取此参数的值?
在src / Utils目录中,我为各种事物创建了一个自定义类Foo。我正在寻找一种获取symfony 4项目的绝对根路径的方法
从控制器,它很容易:
$webPath = $this->get('kernel')->getProjectDir();
Run Code Online (Sandbox Code Playgroud)
但是从我在src / Utils目录中创建的自定义类中,如何获取根路径目录?
我可以将路径从控制器传递到Foo类:
$webPath = $this->get('kernel')->getProjectDir();
$faa = new Foo($webPath);
$faa->doSomething();
Run Code Online (Sandbox Code Playgroud)
但我认为将这些信息存储在Foo类中并且在controller类中仅包含“ controller logic”更为合适
我是一名网络开发人员 (symfony <3 ;) C# 和微软技术对我来说是新的!) 并且在 Covid 遏制期间,我想使用游戏引擎统一创建一个简单的游戏
在Ubuntu 19.10 上,我下载了unity Hub v2.3.0 ( https://unity3d.com/get-unity/download )
从统一中心,我安装了unity3D v2019.3.7f1(最新的稳定版)和一些选项(Linux & WebGL & windows build support)
我创建了一个简单的 2D 游戏
一切都像魅力一样,我可以打开我的项目并运行我的新游戏,而在 unity3D 控制台中没有任何错误
在 Unity 中,当我创建 ac# 脚本时,可以通过我的(非常简单的)文本编辑器 gedit 打开该文件。现在我想安装跨操作系统的 IDE 视觉代码,谢谢,当我编辑我的统一脚本时,我会得到一些有用的扩展和自动完成代码。
所以,我通过安装vscode apt install(我跟着这个官方指导价:https://code.visualstudio.com/docs/setup/linux)
我的 vscode 版本是:
经过一些网络搜索,我明白我必须安装 .NET 框架(也许我错了?)
我的 dotnet 版本(来自终端:dotnet --version)是 3.1.201
接下来我配置了统一参数以更改默认文本编辑器:
我从 unity 创建了一个简单的 c# 脚本,我打开了文件并自动打开了 vscode(是的!)。从 vscode …
我从buildForm函数创建了一个自定义表单.在这种形式,我想添加一个图像字段.
我可以通过这段代码来做到这一点:
$form['main']['image'] = array(
'#type' => 'text_format',
'#title' => t('image'),
'#default_value' => array(10),
);
Run Code Online (Sandbox Code Playgroud)
我可以上传和删除表单中的图片.但是,当我上传图片时,我没有预览.我的意思是,当我通过Drupal UI创建内容时.我可以添加一个预配置的"图像"字段.当我通过这个"图像"字段上传图像时,我预览了图像.
在这里,当我以编程方式创建field元素时,我上传她时没有预览图像.当我通过"图像"字段上传她时,如何使用api Drupal进行图像预览?
我通过自定义模块创建了一个编辑自定义表单(节点的)。在这个表单中,我有一个“管理文件”字段(对于一张图片),我将他的默认值设置为 fid;但是,当我的表单呈现时,“托管文件”字段不显示图像。我不明白为什么:/
我的代码:
$form['project']['image'] = array(
'#type' => 'managed_file',
'#title' => t('Image'),
'#default_value' => 10, //Set 10 for the test, the fid "10" exist, I checked
);
Run Code Online (Sandbox Code Playgroud)
我的表格呈现:
[
]
如您所见,没有加载图像,而 default_value 设置为现有的 fid (10)
从symfony 4中,当我使用findAll方法时,我得到了实体对象的关联数组,其中每个键都是我实体的一个对象
我正在寻找一种获取关联数组的漂亮方法,其中键是我的实体的特定字段的值,而值是我的实体的对象。
实际上,当我使用findAll时,我得到了:
Array
(
[0] => App\Entity\Foo Object
(
[id:App\Entity\Foo:private] => 1
[name:App\Entity\Foo:private] => nameValue1
)
[1] => App\Entity\Foo Object
(
[id:App\Entity\Foo:private] => 2
[name:App\Entity\Foo:private] => nameValue2
)
[2] => App\Entity\Foo Object
(
[id:App\Entity\Foo:private] => 3
[name:App\Entity\Foo:private] => nameValue3
)
...
)
Run Code Online (Sandbox Code Playgroud)
但是,我想要这样:
Array
(
["nameValue1"] => App\Entity\Foo Object
(
[id:App\Entity\Foo:private] => 1
[name:App\Entity\Foo:private] => nameValue1
)
["nameValue2"] => App\Entity\Foo Object
(
[id:App\Entity\Foo:private] => 2
[name:App\Entity\Foo:private] => nameValue2
)
["nameValue3"] => App\Entity\Foo Object
(
[id:App\Entity\Foo:private] => 3
[name:App\Entity\Foo:private] …Run Code Online (Sandbox Code Playgroud) 我有这个简单的课程:
class myCustomClass{
foo(value){
//do some stuff
}
faa(){
//do some stuff
$.getJSON( someUrl, function(data) {
// how call the method foo(value) here ?
this.foo('fii'); // error occured here, because 'this' is not in 'class' context
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我使用AJAX语句时,如何在方法faa中使用方法'foo(value)'?我不能在这里使用简单的'this.foo(value)',因为AJAX语句中'this'的上下文不是'class'上下文(而是AJAX上下文)
在Symfony 4中,可以从控制器通过以下命令获取项目的根路径:
// From a Controller Class, in the src/Controller dir
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
// ...
Class myController extends Controller{
// ...
// in a public method
$rootDir = $this->get('kernel')->getRootDir();
Run Code Online (Sandbox Code Playgroud)
但是,如何从服务类获取根路径?我尝试过这种(丑陋的)方式
// From a Service Class, in the src/Service dir
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
// ...
Class myService extends Controller{
// ...
// in a public method
$rootDir = $this->get('kernel')->getRootDir();
Run Code Online (Sandbox Code Playgroud)
但是当我这样做时,我得到了错误:
"Call to a member function get() on null"
Run Code Online (Sandbox Code Playgroud)
为什么此解决方案不起作用?
在 Symfony 4 项目中,是否有一种正确的/symfony 方法可以从 Fixture 类中获取根路径目录?
最终目标:
当我部署我的网站时,我使用fixtures 类在我的数据库中加载一些“默认”数据。(可能这不是一个好习惯)
在这些默认数据中,我需要存储项目的根路径目录,因为我需要来自项目中自定义 utils 和服务类的这些信息。
我知道有多种方法可以做到这一点。目前,我对绝对路径进行了硬编码(<= 有史以来最丑陋的方式;))
我执行了make:crud为实体用户生成一些文件的命令。
一切都像一种魅力,但我在编辑用户时遇到了一个问题。当我编辑用户时,我可以:
或者
从生成的用户“编辑”控制器:
/**
* @Route("/{id}/edit", name="user_edit", methods={"GET","POST"})
*/
public function edit(Request $request, User $user): Response
{
$form = $this->createForm(UserType::class, $user);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
// HERE : How can I check if the password was changed ?
$this->getDoctrine()->getManager()->flush();
return $this->redirectToRoute('user_index', [
'id' => $user->getId(),
]);
}
return $this->render('user/edit.html.twig', [
'user' => $user,
'form' => $form->createView(),
'title' => 'edit userr'
]);
}
Run Code Online (Sandbox Code Playgroud)
如何检查密码是否已更改?用户变量包含新密码值...
如果密码是新的,我必须使用编码器服务。如果没有,我只需要用新数据更新用户
symfony4 ×6
symfony ×4
php ×3
drupal-8 ×2
drupal-forms ×2
.net ×1
ajax ×1
android ×1
c# ×1
doctrine-orm ×1
gps ×1
javascript ×1
jquery ×1
oop ×1
ubuntu ×1