问题列表 - 第22817页

ASP.MVC路由没有Details操作

我希望网址比/ {Controller}/{Action}/{Id}更短.

例如,我想{Controller}/{Id},其中{Id}是一个字符串.

这将允许简单的路径,例如用户/用户名,页面/页面名称,新闻/新闻名称.我比在URL(用户/详细信息/用户名)中要求/ Details操作更好,这对最终用户来说不那么优雅.

我可以通过为任何我想要这种简单程度的控制器设置自定义路由来轻松完成这项工作.但是,这会导致实现其他操作时出现麻烦,例如{Controller}/{Action},其中{Action} ='Create',因为在这种情况下,字符串{Action}与字符串{Id}冲突.

我的问题:我怎么能有'保留'字样,所以如果URL是/ News/Create,它被视为一个动作,但如果URL是其他任何东西,例如/ News/A-gorilla-ate-my-论文,然后它被视为Id.

我希望在设置路线时可以定义这个?

更新:

使用Ben Griswold的答案,我已将默认的ASP.NET MVC路由更新为:

    routes.MapRoute(
    "CreateRoute",                                            // route name
    "{controller}/Create",                                    // url with parameters
    new { action = "Create" }                                 // parameter defaults
);

routes.MapRoute(
    "DetailsRoute",                                           // route name
    "{controller}/{id}",                                      // url with parameters
    new { action = "Details" }                                // parameter defaults
);

routes.MapRoute(
    "Default",                                              // Route name
    "{controller}/{action}/{id}",                           // URL with parameters
    new { controller = "Home", action = "Index", id = "" }  // Parameter defaults …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc-routing asp.net-mvc-2

7
推荐指数
1
解决办法
2320
查看次数

什么是Java中的"logger"?

我有一节课,其中我看到以下内容:

this.logger.severe("");
this.logger.warning("");
this.logger.info("");
Run Code Online (Sandbox Code Playgroud)

我不明白几件事:

  1. 我们如何使用之前未定义的方法?我的意思是,课堂上没有定义"记录器"方法.我认为可以定义这些方法,因为所考虑的类是另一个定义了"logger"的类的扩展.但是在类的定义中没有"扩展"语句(只有"实现").

  2. 我可以理解这样的事情:"objectName.methodName".但那是什么"objectName.something1.something2"?"something1.something2"是方法的名称?方法名称可以包含点吗?

  3. 究竟这些"记录器.*"到底是什么?我认为他们保存了有关代码执行的信息.他们写了关于执行期间发生的事情的报告.但在哪里可以找到这些信息?

添加:

在文件的开头我有:import java.util.logging.Logger;
然后在课堂上我有:private Logger logger = Logger.getLogger("a.b.c.d");
所以,logger是Logger类的一个对象(但是我不明白为什么他们不能使用"new Logger()"以通常的方式实例化类.我也不明白logger.severe("")到底做了什么.

java oop methods logging

9
推荐指数
2
解决办法
4万
查看次数

最优雅的方式是将0改为1,反之亦然

做下一件事最优雅的方法是什么:

int i = oneOrZero;

if (i == 0) {
   i = 1;
} else {
   i = 0;
}
Run Code Online (Sandbox Code Playgroud)

您可以假设i只能有1或0的值.

java algorithm

52
推荐指数
5
解决办法
3万
查看次数

在Eclipse中重新格式化代码样式

我正在寻找eclipse中的自动方式,将花括号重新格式化为K&R风格,如果等,则消除单个语句的大括号.是否有这样的方法?

谢谢.

java eclipse coding-style

13
推荐指数
1
解决办法
1万
查看次数

如何克隆到非空目录?

我有目录A,文件与目录B匹配.目录A可能有其他所需的文件.目录B是一个git仓库.

我想将目录B克隆到目录A但git-clone将不允许我,因为该目录是非空的.

我希望它只能克隆.git,因为所有的文件匹配,我可以从那里去?

我无法克隆到一个空目录,因为我在目录A中的文件不在目录B中,我想保留它们.

复制.git不是一个选项,因为我想要refs推/拉,我不想手动设置它们.

有没有办法做到这一点?

更新:我认为这有效,任何人都可以看到任何问题吗? - >

cd a
git clone --no-hardlinks --no-checkout ../b a.tmp 
mv a.tmp/.git .
rm -rf a.tmp
git unstage # apparently git thinks all the files are deleted if you don't do this
Run Code Online (Sandbox Code Playgroud)

git

548
推荐指数
12
解决办法
27万
查看次数

改变PHP类型强制

当我将我的站点从HostGator移动到专用服务器时,有几件事情被打破,所有内容都被破坏,涉及类型强制.如果$ _POST ['var']为0,则不认为它是整数,并且无法与另一个整数进行比较.

我经历过并在我找到的网站上所有那些破碎的地方强制使用int类型,但我确信还有更多我找不到的地方.我并不熟悉PHP.ini配置,但也许你可以告诉我如何解决这个问题?

谢谢

php type-coercion

0
推荐指数
1
解决办法
979
查看次数

SQL Server:使用FK删除表

在表"A"上依赖于30个其他表格通过FK到"A.Id".

对于集成测试,我必须删除表并重新创建它以创建已定义的状态.由于依赖对象,它们似乎无法删除和重新创建表.错误消息是:

无法删除对象'dbo.A',因为它是由FOREIGN KEY约束引用的

问题(S):

  • 如何删除并重新创建表"A"
  • (或)是否有任何方法可以全局关闭架构依赖关系?
  • (或)有没有办法在删除和恢复表"A"之前备份(所有!)依赖关系并在之后恢复所有依赖关系?

t-sql sql-server sql-server-2005 sql-server-2008

11
推荐指数
2
解决办法
4853
查看次数

Firefox跨域请求

我需要从在Firefox中运行的脚本发出跨域请求(它仅用于开发目的).

这可以实现吗?也许修改about:config键?

谢谢!

javascript firefox cross-domain same-origin-policy

11
推荐指数
1
解决办法
8616
查看次数

Rails belongs_to关联,在收集的一部分时无法访问所有者的属性?

我有一个对象,球,属于一个女孩,可以有很多球.一切都有效,但如果我尝试通过以下方式打印出女孩的名字:

@balls.each do |b|
    b.girl.name
end
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

"undefined method `name' for nil:NilClass"
Run Code Online (Sandbox Code Playgroud)

这让我很困惑.如果我说b.girl.class,我把它作为Girl的一个实例,就好了.也就是说,它不是"NillClass".

不仅如此,如果我只是尝试任何球,并说

@ball.girl.name
Run Code Online (Sandbox Code Playgroud)

我很好.

那些让我搞砸的球的集合是什么?

编辑:

具体来说,这在我看来正在发生.我现在正在测试它是否也发生在控制器中.

ruby ruby-on-rails belongs-to

3
推荐指数
1
解决办法
2690
查看次数

如何为SBT创建编译器Action

我想创建一个Action来自动化GCJ编译.由于我无法使用Ant,我决定尝试使用SBT.文档说明了如何创建Action以及如何运行外部流程.我还没有看到如何重用java和scala编译器Actions存在的目录树遍历.在这种情况下,我的输入文件将是某个根文件夹下的所有.class文件.我还需要为GCJ指定一个特定的类路径.任何指针也将受到赞赏.

scala gcj sbt

5
推荐指数
1
解决办法
593
查看次数