我启动了一个运行良好的 localstack 容器,但我需要等待从位于的脚本创建的 s3 存储桶/docker-entrypoint-initaws.d完全正常运行,然后再启动我的其他容器。
我知道有可能等待 localstack 完全准备好:
healthcheck:
test: ["CMD", "curl", "http://localhost:4566/health?reload"]
Run Code Online (Sandbox Code Playgroud)
但是有没有一种方法可以检查特定 s3 存储桶的运行状况?
我Django-Rest有一个类User包含的领域first_name,而一个类Account包含的字段username和a_class_ref这是一个one-to-one'关系。
如何在序列化程序中B执行以下操作:
class AccountSerializer():
class Meta:
model= Account
fields= [
'username',
'firstname`
]
Run Code Online (Sandbox Code Playgroud)
帐户 :
class Account(models.Model):
user = models.OneToOneField(
settings.AUTH_USER_MODEL,
related_name='account',
on_delete=models.CASCADE
)
def username(self):
return self.user.username <== this is the solution that I'm trying to avoid
Run Code Online (Sandbox Code Playgroud)
并且User是AbstractUserDjango-rest-framework的扩展,它带有一个first_name = models.CharField(_('first name'), max_length=30, blank=True)
谢谢
我正在构建一个 symfony4 网络应用程序。我有一个命令,可以像魅力一样直接在 cli 中运行:
php bin/console app:analysis-file 4
Run Code Online (Sandbox Code Playgroud)
但是当我尝试exec直接从Controllervia 进行操作时:
$process = new Process('php bin/console app:analysis-file '.
$bankStatement->getId());
$process->run();
Run Code Online (Sandbox Code Playgroud)
然后$process->getOutput()返回“ Could not open input file bin/console”。
这是Command Class:
class AnalysisFileCommand extends ContainerAwareCommand
{
protected function configure()
{
$this
->setName('app:analysis-file')
->addArgument('file_id', InputArgument::REQUIRED);
}
protected function execute(InputInterface $input, OutputInterface $output)
{
$entityManager = $this->getContainer()->get('doctrine')->getEntityManager();
$bankStatement = $entityManager->getRepository(BankStatement::class)->find($input->getArgument("file_id"));
$bankStatement->setStatus(BankStatement::ANALYZING);
$entityManager->persist($bankStatement);
$entityManager->flush();
}
}
Run Code Online (Sandbox Code Playgroud) 我正在构建一个 web 应用程序,Symfony因为现在我不得不为我构建的每个新控制器重复一个特定的模式。
例如我有这个AdminController:
/**
* @Route("/pro/{uniqid}")
* @ParamConverter("company", options={"mapping":{"uniqid" = "uniqid"}})
* @Security("is_granted(constant('App\\Security\\Voter\\CompanyVoter::VIEW'), company)")
* @package App\Controller
*/
class AdminController extends Controller
{
/**
* @Route("/admin/users/", name="users")
* @return \Symfony\Component\HttpFoundation\Response
*/
public function users(Company $company){}
}
Run Code Online (Sandbox Code Playgroud)
因此,每个控制器必须重新定义@Route,@ParamConverter而@Security这是非常多余。
我试图创建一个LoggedController定义每个注释的,然后 makeController扩展那个LoggedController,但这不起作用。
有没有解决方案,或者我应该在每次创建一个Controller需要实现它的新注解时继续复制/粘贴这些注解?
编辑:我添加Company实体声明:
/**
* @ORM\Entity(repositoryClass="App\Repository\CompanyRepository")
*/
class Company
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
Run Code Online (Sandbox Code Playgroud) 我对javascript和chrome-extension非常陌生,我尝试创建阻止某些域的扩展。我想将这些域存储在文件中,也许使用adblock的方法。
我知道有,localstorage但是这是存储数据的唯一方法吗?
如果存储在文件中,如何从javascript扩展名中打开它?
谢谢
php ×2
symfony ×2
amazon-s3 ×1
annotations ×1
django ×1
docker ×1
javascript ×1
localstack ×1
python ×1
symfony4 ×1