jjzjj

php - 删除 Symfony2 表单中的表单 namespace (用于 REST API)

coder 2024-05-03 原文

我正在使用 Symfony2 设计 REST API。

对于 POST 和 PUT 请求,我使用的是 FormType。像这样的东西:

class EmailType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder->add('subject', 'textarea')
        [...]
        ;
    }

    public function getName()
    {
        return 'email';
    }
}

但是当我发布时,我必须传递具有命名空间的字段,例如:

{
    "email": {
        "subject": "subject"
    }
}

但我不想要这个顶级命名空间!

有什么想法吗?

最佳答案

表单类型必须有一个名称,因为如果您将其注册为标记为表单类型的服务,则需要以某种方式引用它。在以下代码片段中,email 是表单类型的名称:

$form = $this->formFactory->create('email', $email);

这就是为什么你必须在表单类型类中返回一个名字:

public function getName()
{
    return 'email';
}

因此,与其创建没有名称的表单类型,不如创建一个表单——该表单类型的特定实例——空名称:

$form = $this->formFactory->createNamed(null, 'email', $email);

空字符串 — '' — 而不是 null 也可以。

关于php - 删除 Symfony2 表单中的表单 namespace (用于 REST API),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18585774/

有关php - 删除 Symfony2 表单中的表单 namespace (用于 REST API)的更多相关文章

  1. c# - 用于 Salesforce 出站消息传递的契约(Contract)优先 WCF - 2

    我正在考虑为SalesforceOutboundMessaging实现监听器应用程序。walkthrough使用已弃用的ASMXWeb服务实现它。代码是使用带有/serverInterface开关的wsdl.exe生成的。这是SalesforceOutboundMessaging的wsdl。<?xmlversion="1.0"encoding="UTF-8"?><definitionstargetNamespace="http://soap.sforce.com/2005/09/outbound"xmlns="h

  2. c# - 添加/删除 TraceListener 到所有 TraceSources - 2

    我正在寻找一种方法来为所有现有的TraceSources添加和删除TraceListener。(我不确定我的方法在这里是否正确,我还可以使用哪些其他方法?基本上我想将所有跟踪输出记录到一个使用当前项目名称作为文件名的文件中。每当用户创建或重新打开项目时,我都想将日志附加到正确的文件中。一次只能打开一个项目。)代码示例:我在我的应用程序中创建了多个TraceSources,每个类一个publicclassClass1{privatestaticreadonlySystem.Diagnostics.TraceSourcetrace=newSystem.Diagnostics.TraceSo

  3. c# - 用于创建用户的 Azure AD Graph 调用因一些模糊错误而失败 - 2

    我被告知要在这里提出有关AzureADGraphApi的问题,而不是将其作为相应GitHub示例存储库的问题提出,我希望AzureGraphAPI团队监控SO并可以帮助我们thisgithubsampleissue问题的一些额外背景:我们使用Microsoft.Azure.ActiveDirectory.GraphClientnuget在我们的AzureAD测试租户中创建和管理用户。正在关注thissampleapplication我们可以通过GraphAPI在AzureAD中创建和更新用户。这很好,直到大约2-3天前发生的某个时刻(不确定确切的时刻,我们在AU时间星期二早上发现了问题

  4. c# - SHGetImageList - 用于较小图标的 SHIL_JUMBO (32,32) - 2

    在我的代码中,我通过函数SHGETImageList获得了一个大小为SHIL_JUMBO的图像列表。IImageListiml;varhres=SHGetImageList(SHIL_JUMBO,refiidImageList,outiml);IntPtrhIcon=IntPtr.Zero;iml.GetIcon(i,ILD_TRANSPARENT|ILD_IMAGE,refhIcon);Iconico=(Icon)System.Drawing.Icon.FromHandle(hIcon).Clone();ShellAPI.DestroyIcon(hIcon);一切正常,但是当它必须得

  5. C#:从字符串中删除常见的无效字符:改进此算法 - 2

    考虑从字符串中去除无效字符的要求。只需删除字符并替换为空白或string.Empty。char[]BAD_CHARS=newchar[]{'!','@','#','$','%','_'};//simpleexampleforeach(charbadinBAD_CHARS){if(someString.Contains(bad))someString=someString.Replace(bad.ToString(),string.Empty);}我真的很想这样做:if(BAD_CHARS.A

  6. c# - 如何将 .PNG 图像设置为我的 WPF 表单的 TILED 背景图像? - 2

    我正在自学WPF,但我似乎找不到完成这项工作的方法。这是我的代码:<Windowx:Class="Test.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Title="Test"Height="600"Width="800"><DockPanel><M

  7. c# - 如何删除 'Click' 的 'Button' 事件的所有事件处理程序? - 2

    我有一个按钮控件,我需要删除所有附加到其Clickevent的事件处理程序.这怎么可能?Buttonbutton=GetButton();button.Click.RemoveAllEventHandlers(); 最佳答案 Note:SincethequestiononwhichIpostedmyoriginalanswerwasclosedasaduplicateofthisquestion,I'mcross-postinganimprovedversionofmyanswerhere.Thisansweronlyapp

  8. c# - htmlagilitypack - 删除脚本和样式? - 2

    我使用以下方法从html中提取文本:publicstringgetAllText(string_html){string_allText="";try{HtmlAgilityPack.HtmlDocumentdocument=newHtmlAgilityPack.HtmlDocument();document.LoadHtml(_html);varroot=document.DocumentNode;varsb=newStringBuilder();foreach(varnodeinroot.DescendantNodesAndSelf()){if(!node.HasC

  9. c# - QueueUserWorkItem() 和 BeginInvoke() 之间的区别是什么,用于执行不需要返回类型的异步事件 - 2

    根据我的BeginInvoke()/EndInvoke()问题,Delegate.BeginInvoke()和使用QueueUserWorkItem()异步调用委托(delegate)之间在性能/其他方面是否存在重大差异? 最佳答案 我能想到的关于QueueUserWorkItem的主要事情是你必须使用WaitCallback委托(delegate)类型,如果你已经有一个SomeRandomDelegate实例和一些参数。好消息是你可以用闭包来解决这个问题:ThreadPool.QueueUserWorkItem(delegate{

  10. c# - 如何有条件地从 .NET 集合中删除项目 - 2

    我正在尝试在.NET中编写一个扩展方法,它将对通用集合进行操作,并从集合中删除符合给定条件的所有项目。这是我的第一次尝试:publicstaticvoidRemoveWhere<T>(thisICollection<T>Coll,Func<T,bool>Criteria){foreach(TobjinColl.Where(Criteria))Coll.Remove(obj);}然而,这将引发InvalidOperationException,“集合已修改;枚举操作可能无法执行”。这确实有道理,所以我第二次尝试使用第二个集合变量来保存需要删除的项目并迭

随机推荐

  1. c# - 将查询参数绑定(bind)到 ASP.NET Core 中的模型 - 2

    我正在尝试使用从查询参数到搜索对象的模型绑定(bind)。我的搜索对象是[DataContract]publicclassCriteria{[DataMember(Name="first_name")]publicstringFirstName{get;set;}}我的Controller有以下Action[Route("users")]publicclassUserController:Controller{[HttpGet("search")]publicIActionResultSearch([FromQuery]Criteriac

  2. c# - 使用 C# 一般压扁 Json - 2

    我想一般地展平一些json,以便我可以转换为数据表并使用c#绑定(bind)到数据网格考虑到我不知道要下降多少级别,最好的方法是什么?例如{"appointmentid":4,"policyid":1,"guid":"00000000-0000-0000-0000-000000000000","number":"1234567890","ampm":"false","date":"2015-09-08T00:00:00",

  3. c# - 无法读取配置部分 'system.web.webPages.razor',因为它缺少部分声明 - 2

    我卡住了..Razor不再在VS2013中工作,我在浏览器中收到此消息:我相信它在消息中missingasectiondeclaration但我不知道是什么做..请帮忙!!HTTPError500.19-InternalServerErrorTherequestedpagecannotbeaccessedbecausetherelatedconfigurationdataforthepageisinvalid.ModuleIISWebCoreNotificationUnknownHandlerNotyetdeterminedErrorCode0x80070032ConfigErrorT

  4. c# - t4 模板的缩进错误 - 2

    我目前正在使用T4模板,我注意到有时代码缩进不正确,我该如何避免这种情况?例如我在模板中有这段代码}<#}#>this.cmbDecisionList.Dat=dataSource;this.btnDec.Enabled=dataSource.Count>0;}在生成的类中它就像}this.cmbDecisionList.Dat=dataSource;this.btnDec.Enabled=dataSource.Count>0;} 最佳答案 请允许我用点替换空格来说明您的问题。}....<#}#>

  5. c# - 基于更大列表对列表进行排序的 LINQ 方法 - 2

    List<int>_lstNeedToOrder=newList<int>();_lstNeedToOrder.AddRange(newint[]{1,5,6,8});//Ineedtosortthisbasedonthebelowlist.List<int>_lstOrdered=newList<int>();//toorderbythislist_lstOrdered.AddRange(newint[]{13,5,11,1,4,9,2,7,12,10,3,8,6});orderwillbe-->_lstNeedToOrder=5

  6. c# - 如何将字符串转换为运行时确定的可空类型? - 2

    我有下面的代码,我需要将一个字符串转换为同样从String指定的类型:Typet=Type.GetType("System.Nullable`1[[System.DateTime,mscorlib,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089]]");objectd=Convert.ChangeType("2012-02-2310:00:00",t);我收到以下错误消息:Invalidcastfrom'System.String'to'System.

  7. c# - 窗体 : How to bind the Checkbox item of a CheckedListBox with databinding - 2

    我有一种形式的数据绑定(bind)检查列表框,我想知道是否有可能将每个列表框项的复选框与对象的特定属性进行数据绑定(bind)。提前感谢您的帮助:)编辑:也许我的问题被误解了。我想知道是否可以对CheckedListBox的每个项目的复选框进行数据绑定(bind)。我知道如何将数据绑定(bind)到源以及如何通过迭代itmes以编程方式更改条目。我不知道是否有可能上课它实现了INotifyPropertyChanged,因此当“CheckedState”属性更改时,CheckedListBox会自行更新。 最佳答案 根据Samich

  8. c# - ReferentialConstraint 中的依赖属性映射到存储生成的列。列 : 'ID' - 2

    当我尝试添加Venue对象并调用SaveChanges()时,我不明白为什么会出现此错误。模型中与Venue对象的唯一区别是它们与City是1对1..0关系。Citycity=ProcessCityCache(ev,country,db);//Afterthiscall,'city'isalreadypersisted.venue=newVenue{TicketMasterURL=ev.VenueSeoLink,Name=Capitalize(ev.VenueName),City=city};db.Venues.AddObject(venue);db.SaveChang

  9. c# - LINQ:从字典中获取给定值列表的键,反之亦然 - 2

    我的代码中有以下结构Dictionary<TKeys,TValues>data;.我对这两种数据类型都运行了一些LINQ查询,并且经常需要在Keys之间切换和Values.获取给定值的键列表的最佳方法是什么,反之亦然?请注意,由于我以前的LINQ查询,我通常有'IEnumerable'和'IEnumerable'并且想要像IEnumerable<TKeys>Dictionary.GetAllKeys(IEnumerable<IValues>vals)这样的东西和IEnumerable<TValues>Dictionary.GetAllVa

  10. c# - 目录的 GetTempFileName 函数? - 2

    .NETFramework定义了一个System.IO.Path.GetTempFileName方法,该方法保证它生成的临时文件名是唯一的。据我所知,尽管极不可能,但此文件名可能与同一路径中的目录名称相同,这意味着我不能通过采用该文件的名称来假设,删除它,并创建一个同名的目录,我将拥有一个与任何其他目录具有唯一名称的目录。此外,我无法指定GetTempFileName应在其下创建其临时文件的路径。对于目录,似乎没有与GetTempFileName等效的函数。是否有GetTempFileName等效于创建唯一目录?如果没有,在指定位置创建唯一目录的最佳方法是什么(即我指定创建唯一目录的路