URL中的每个参数都可以有多个值.我该如何分开它们?这是一个例子:
http://www.example.com/search?queries=cars,phones
Run Code Online (Sandbox Code Playgroud)
所以我想搜索两种不同的东西:汽车和手机(这只是一个人为的例子).问题是分隔符,一个逗号.用户可以在搜索表单中输入逗号作为查询的一部分,然后这会搞砸.我可以有2个单独的URL参数:
http://www.example.com/login?name1=harry&name2=bob
Run Code Online (Sandbox Code Playgroud)
那里没有真正的问题,事实上我认为这就是设计URL来处理这种情况的方法.但我不能在我的特殊情况下使用它.需要一个单独的长帖来说明原因......我需要简单地分离值.
我的问题基本上是,是否有一个URL可编码的字符或值,不能以表格(textarea或输入)输入,我可以用作分隔符?像空字符?还是一个不可见的角色?
更新:谢谢大家的快速回复.我也应该列出相同的参数名称示例,但在我的情况下,顺序也很重要,因此也不是一个选项.我们通过使用%00 URL编码字符(UTF-8\u0000)作为值分隔符来解决此问题.
我是第一次使用Doctrine2,但我认为这个问题非常通用,不依赖于特定的ORM.
Data Mapper模式中的实体是否应该知道并使用 Mapper?
我有几个具体的例子,但它们似乎都归结为同样的一般性问题.
如果我正在处理来自外部源的数据 - 例如a User有很多Messages- 并且外部源只提供最新的几个实体(如RSS提要),$user->addMessage($message)除非它知道Mapper,否则如何检查重复项,或者它通过集合"搜索"(似乎是一件低效的事情).
当然,控制器或事务脚本可以在将消息添加到用户之前检查重复项 - 但这似乎不太正确,并且会导致代码重复.
如果我有一个大型集合 - 再次User有很多Messages- User实体如何为集合提供限制和分页而不实际代理Mapper调用?
同样,控制器或交易脚本或任何使用实体可以直接使用映射来检索集合User的Messages通过次数,日期范围或其他因素的限制-而这也将导致代码重复.
答案是使用存储库并让实体知道它们吗?(至少对于Doctrine2,以及其他ORM使用的类似概念.)此时,实体仍然与Mapper相对分离.
我有一个隐藏的输入#start这个值用于显示一系列返回的数据(它是索引的起点)每次单击#next我需要增加它的值.
$("#next").click(function() {
$("#start").val() + 80;
)};
Run Code Online (Sandbox Code Playgroud)
它是否正确?或者,还有更好的方法?全部!
我可以想到一些令人讨厌的低效方法来完成这项任务,但我想知道最好的方法是什么.
例如,我想从一个字节的第3位开始复制10个字节,并像往常一样复制到指针.
有没有比一次复制一个移位字节更好的方法?
谢谢
我正在生成带有沿X轴的日期的多系列图.
问题是并非图中的所有系列在日期范围内都具有相同的日期.这意味着,如果我选择2月1日到4月30日,那么一个系列可能有数据从2月1日开始,但只持续到3月底,但另一个系列可能有整个日期范围的数据.
这会扭曲我需要创建的图表.去,给定在查询开始时采用的日期范围,我想生成一个日期列表并填充要绘制的数据,用那些没有数据的日期填充0的系列.
我刚刚开始使用Web框架和Web开发(我只使用PHP CI进行了一些操作)并决定转向python(我需要一般编程语言,不仅限于Web应用程序).我在google上做过研究,发现Pylons和Django是python的最佳和最流行的web框架.但是在一些博客上,讨论人们说Django非常适合某种CMS应用程序(博客或类似的东西),而在其他情况下,它不是一个好的选择(缺乏灵活性等等).这是真的?而且我也注意到人们说Pylons更难学,但后来更强大.这是真的吗?
对于那些不是蟒蛇大师和OOP大师的人来说,Pylons与Django相比有多难?我知道在这两种情况下都需要工作知识python才能有效地使用框架.我有时间学习语言和框架,但只是想知道这两个中的哪一个.我也会在app JS中使用,但是当我学习它时,我宁愿自己编写代码而不是使用一些"魔术"助手等.
是否可以在没有使用HTML 5的MVC的情况下使用ASP.NET?链接会很棒.
有一个问题询问如何对List进行排序.从基本的List.Sort()到List.OrderBy()给出了几种方法.最可笑的是一个自己动手的SelectionSort.我立刻投了票,但它让我思考; 不会的LINQ的排序依据(),适用于清单,做同样的事情?myList.OrderBy(X => x.Property).ToList()将产生基本上发现在什么剩下集合的投影的最小值和产量返回它的迭代器.在浏览整个列表时,这是一种选择排序.
这让我想到了; Lists,SortedLists,Enumerables等内置分类器使用什么算法,并且通过扩展,它们是否应该避免大型集合中的任何一个?SortedList,因为它按键排序,可能会在每次添加时使用单次传递InsertionSort; 找到第一个索引,其值大于新索引,并在其之前插入.列表和数组可能MergeSort本身非常有效,但我不知道Sort()背后的实际算法.我们已经讨论过OrderBy.
我上面所知的似乎表明List.Sort()或Array.Sort()是已知大小列表的最佳选项,并且不鼓励使用Linq对内存列表或数组进行排序.对于一个流,那么OrderBy()确实没有任何其他方法可枚举; 由于您可以将数据保存为流而不必在排序之前完成所有操作,因此可以减轻性能损失.
编辑:
普遍的共识是,给定List或Array的具体实现,Sort()更快.OrderBy是合理的但速度较慢,因为它增加了从传递的可枚举中提取数组的O(N)复杂性.SortedList初始化最终为O(N ^ 2),因为它的内幕是什么.故事的道德,当你有一个实际的List时,使用List.Sort()而不是List.OrderBy().
我似乎无法掌握如何配置MSTest部署项.我已经能够通过修改项目的测试设置文件来使它们正常工作,但这不太理想 - 部署项配置与单个测试分开,文件路径似乎存储为绝对路径,除非文件是在解决方案文件夹下.
难道我不应该能够添加使用部署项目[DeploymentItem]上无论是属性[TestClass]还是[TestMethod]无需创建/修改项目的测试设置文件?我该如何做到这一点?
(坦率地说,我不明白是否需要单独的部署项配置 - 为什么不使用现有的"复制到输出目录"设置来处理应该是部署项目的项目文件?)
.net ×2
android ×1
asp.net ×1
c ×1
c# ×1
collections ×1
datamapper ×1
django ×1
html ×1
html5 ×1
java ×1
javascript ×1
jquery ×1
list ×1
memcpy ×1
memory ×1
mstest ×1
oop ×1
orm ×1
parameters ×1
parsing ×1
performance ×1
php ×1
pylons ×1
silent ×1
sorting ×1
unit-testing ×1
url ×1
urlencode ×1