在路径中:
格式: http : //mydomain.com/ {category}/{subcategory}/{pageNumber}/{pageSize}
示例: http ://mydomain.com/books/thriller/3/25
在查询字符串中:
格式: http ://mydomain.com/ {category}/{subcategory}?PAGENUMBER = {PAGENUMBER}&的pageSize = {}的pageSize
示例: http ://mydomain.com/books/thriller?pageNumber = 3&pageSize = 25
我喜欢把所有东西放在路上,但我的问题是,虽然在第一个例子中"书"和"惊悚片" 显而易见(或至少有些明显),但"3"和"25"似乎很随意相比之下.
是否有一种规范的方法来确定MVC中的位置,或者它真的只适用于开发人员?
我已经定义了一个Format实现的枚举类型QueryStringBindable.我想我已经正确实现了它,但在我的路由文件中,我不能将我的类型指定为路由参数,因为编译器找不到它,我不知道如何将它导入路由文件.
这是枚举:
package web;
import java.util.Map;
import play.libs.F;
import play.mvc.QueryStringBindable;
public enum Format implements QueryStringBindable<Format> {
Html,
Pdf,
Csv;
private Format value;
@Override
public F.Option<Format> bind(String key, Map<String, String[]> data) {
String[] vs = data.get(key);
if (vs != null && vs.length > 0) {
String v = vs[0];
value = Enum.valueOf(Format.class, v);
return F.Option.Some(value);
}
return F.Option.None();
}
@Override
public String unbind(String key) {
return key + "=" + value;
}
@Override
public String javascriptUnbind() { …Run Code Online (Sandbox Code Playgroud) 如何在每个CSS中添加一个查询字符串参数,并在HTML中包含JavaScript以清除CSS和JavaScript缓存.我试过了
<action method="addCss"><stylesheet>css/style.css?123</stylesheet></action>
和
<action method="addItem"><type>skin_css</type><name>css/styles.css?123</name><params/></action>
.但每次它返回一个基本包就像
http://www.example.com/skin/frontend/base/default/styles.css?123
不是我的自定义主题目录.
怎么解决这个?
我必须redirecttoaction在asp.net mvc视图中调用不同的参数,从视图的referrer页面(网格的状态)中提取.
我(在隐藏字段中)查询字符串的内容(有时是空的,有时带有2个参数等等),所以我在创建路由值数组时遇到问题.
是否有一些助手,帮助我将查询字符串转换为路由值数组?就像是:
string querystring ="sortdir=asc&pag=5";
return RedirectToAction( "Index", ConvertToRouteArray(querystring));
Run Code Online (Sandbox Code Playgroud) asp.net-mvc redirecttoaction asp.net-mvc-routing query-string
也许我错过了一些东西,但我只想(在我的java程序中)从javax.persistence.Query对象中获取查询字符串?该Query对象本身似乎并不具备这样做的方法.另外我知道我们的经理不希望我们使用Spring框架的东西(例如使用他们的QueryUtils类).
有没有办法简单地从javax.persistence.Query对象中获取查询字符串(再次,在java程序中)?
我想在get方法中将一些成功消息打印回索引页面(home.html),即在查询字符串的帮助下打印模板页面.我已经使用重定向到索引页面
return HttpResponseRedirect("/mysite/q="+successfailure)
Run Code Online (Sandbox Code Playgroud)
现在我想在索引文件(或模板文件/ home.html文件)中打印字符串成功以及其他内容.
我搜索了解决方案,发现应该在设置中添加"django.core.context_processors.request context".但我找不到添加它的地方.我目前正在使用python 2.7和django 1.4.3.
我也试过用
render_to_response("home.html",{'q':successfailure})
Run Code Online (Sandbox Code Playgroud)
然而,结果打印在当前页面(addContent.html-我不想要)但我想将网址发送到'/ mysite /'并在那里打印结果.
请建议适当的解决方案.提前致谢.
f:param很好用h:link,但不用p:commandLink或h:commandLink.
例如,我有两页test_first.xhtml和test_second.xhtml,和背部的java bean TestBean.java.
我开始跑步了test_first.xhtml.
如果我单击link1,这是一个h:link,页面将重定向到test_second.xhtml.借助于f:param,浏览器的地址栏将显示.../test_second.xhtml?id=1.在该页面上,testBean.userId打印出来.
如果我单击link2或link3,页面重定向到test_second.xhtml.但是,地址栏只显示.../test_second.xhtml,没有?id=#!并且testBean.userId不会在该页面上打印.
我怎样才能commandLink合作f:param?有时我希望链接不会重定向到另一个页面,而是根据数据调用bean的某些方法.
test_first.xhtml:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui">
<h:head/>
<h:body>
<h:form>
<h:link value="link1" outcome="test_second" >
<f:param name="id" value="1"/>
</h:link>
<br/><br/>
<h:commandLink value="link2" action="test_second?faces-redirect=true" >
<f:param name="id" value="2" />
</h:commandLink>
<br/><br/>
<p:commandLink value="link3" …Run Code Online (Sandbox Code Playgroud) 搜索了这么久但没有得到任何可行的答案.
A)输入:
$array = array(
'order_source' => array('google','facebook'),
'order_medium' => 'google-text'
);
Run Code Online (Sandbox Code Playgroud)
看起来像:
Array
(
[order_source] => Array
(
[0] => google
[1] => facebook
)
[order_medium] => google-text
)
Run Code Online (Sandbox Code Playgroud)
B)所需产量:
order_source =谷歌&order_source = Facebook和order_medium =谷歌的文本
C)我尝试过的(http://3v4l.org/b3OYo):
$arr = array('order_source' => array('google','facebook'), 'order_medium' => 'google-text');
function bqs($array, $qs='')
{
foreach($array as $par => $val)
{
if(is_array($val))
{
bqs($val, $qs);
}
else
{
$qs .= $par.'='.$val.'&';
}
}
return $qs;
}
echo $qss = bqs($arr);
Run Code Online (Sandbox Code Playgroud)
D)我得到了什么: …
我需要在我们的数据库中存储用户搜索查询以跟踪搜索历史记录.我知道request.original_url会将查询字符串作为绝对URL.
http://www.example.com/search?utf8=%E2%9C%93&keywords=cars&view=grid
Run Code Online (Sandbox Code Playgroud)
我宁愿存储相对url路径.话虽如此,对于所有params的相对url,request.original_fullpath和request.fullpath之间有什么区别?他们似乎是一回事?
request.original_fullpath
/search?utf8=%E2%9C%93&keywords=cars&view=grid
Run Code Online (Sandbox Code Playgroud)
request.fullpath
/search?utf8=%E2%9C%93&keywords=cars&view=grid
Run Code Online (Sandbox Code Playgroud) 我正在尝试做与这篇文章完全相同的事情:Angular 4 get queryString
我正在使用Angular 5.2.5。
当用户首次访问网站时,ActivatedRoute似乎是用来从URL检索查询字符串值的东西。但是,我无法弄清楚需要导入什么才能使用ActivatedRoute。
有人可以确切指定需要添加到app.module.ts文件以及我要使用ActivatedRoute的component.ts文件的内容吗?
这篇文章指定将路由添加到@NgModule的imports数组:ActivatedRoute-Angular 2 RC5的没有提供程序。但是,我没有app.routing.ts文件。我必须创建一个app.routing.ts文件才能使用ActivatedRoute吗?
query-string ×10
java ×2
angular5 ×1
asp.net-mvc ×1
css ×1
django ×1
enums ×1
jpa ×1
jsf ×1
magento ×1
orm ×1
pagination ×1
path ×1
php ×1
primefaces ×1
recursion ×1
templates ×1
uri ×1
xml ×1