是否有可能从config中的子目录导入services.yml文件?
我有这样的结构:
[Acme/MyBundle/Resources]
--[config]
----[routing]
----[services]
------[User]
--------services.yml
----[validation]
----routing.yml
----services.yml
----validation.yml
Run Code Online (Sandbox Code Playgroud)
现在我想导入文件Acme/MyBundle/Resources/config/services/User/services.yml 到Acme/MyBundle/Resources/config/services.yml,这是在装DependencyInjection/AcmeMyExtension.代码Acme/MyBundle/Resources/config/services.yml是:
imports:
- { resource: "@AcmeMyBundle/Resources/config/services/User/services.yml" }
services:
//other services
Run Code Online (Sandbox Code Playgroud)
我收到错误:
Fatal error: Uncaught exception 'InvalidArgumentException' with message 'The file "@AcmeMyBundle/Resources/config/services/User/services.yml" does not exist (in: ., C:\wamp\www\dir\src\Acme\MyBundle\DependencyInjection/../Resources/config).' in C:\wamp\www\dir\app\cache\dev\classes.php:1518
Stack trace: #0 C:\wamp\www\dir\vendor\symfony\symfony\src\Symfony\Component\Config\Loader\FileLoader.php(70): Symfony\Component\Config\FileLocator->locate('@AcmeMyBundle/...', '.', false) #1 C:\wamp\www\dir\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\Loader\YamlFileLoader.php(97): Symfony\Component\Config\Loader\FileLoader->import('@AcmeMyBundle/...', NULL, false, 'services.yml') #2 C:\wamp\www\dir\vendor\symfony\symfony\src\Symfony\Component\DependencyInjection\Loader\YamlFileLoader.php(54): Symfony\Component\DependencyInjection\Loader\YamlFileLoader->parseImports(Array, 'services.yml') #3 C:\wamp\www\dir\src\Acme\MyBundle\DependencyInjection\AcmeMyExtension.php(26): Symfony\Co in C:\wamp\www\dir\vendor\symfony\symfony\src\Symfony\Component\Config\Loader\FileLoader.php on line 100
Run Code Online (Sandbox Code Playgroud)
Acme/MyBundle/DependencyInjection/AcmeMyExtension.php的代码:
<?php
namespace Core\MpgBundle\DependencyInjection;
use Symfony\Component\DependencyInjection\ContainerBuilder; …Run Code Online (Sandbox Code Playgroud) 我只是为用户注册创建一个表单代码在这里
forms.py
from django import forms
from django.conf import settings
from django.contrib.auth import get_user_model
def lowercase_email(email):
"""
Normalize the address by lowercasing the domain part of the email
address.
"""
email = email or ''
try:
email_name, domain_part = email.strip().rsplit('@', 1)
except ValueError:
pass
else:
email = '@'.join([email_name.lower(), domain_part.lower()])
return email
class SignupForm (forms.ModelForm):
username =forms.CharField(
label='username',required=True,max_length=20,min_length=3)
email = forms.EmailField(
label='email',required=True)
password =forms.CharField(
label='pssword',required=True,max_length=20,min_length=6,widget = forms.PasswordInput)
confirm_password= forms.CharField(
label='confirm_email',required=True,max_length=20,min_length=6,widget = forms.PasswordInput)
class Meta:
model = get_user_model()
fields = ("username","email","password","confirm_password",)
def …Run Code Online (Sandbox Code Playgroud)