问题列表 - 第25559页

向link_to添加查询字符串参数

我很难在link_to UrlHelper中添加查询字符串参数.我有一个索引视图,例如,它具有用于排序,过滤和分页的UI元素(通过will_paginate).will_paginate插件正确管理查询字符串参数的页内持久性.

是否有自动机制将查询字符串参数添加到给定命名路由,或者我是否需要手动执行此操作?对这个看似简单的结构的大量研究让我一无所知.

编辑

一些挑战:

  1. 如果我有两个查询字符串参数,存储桶和排序,如何在link_to中为其中一个设置特定值,同时保留另一个的当前值?例如:

    <%= link_to "0", profiles_path(:bucket => '0', :sorting=>?? ) %>
    
    Run Code Online (Sandbox Code Playgroud)
  2. 如果我有多个查询字符串参数,bucket&sorting&page_size,并且我想将值设置为其中之一,是否有办法'自动'包含其余参数的名称和值?例如:

    <%= link_to "0", profiles_path(:bucket => '0', [include sorting and page_size name/values here] ) %>
    
    Run Code Online (Sandbox Code Playgroud)
  3. will_paginate插件自动管理其页面变量和其他查询字符串变量.似乎没有用于管理页面大小的自动UI元素.虽然我已经看到了创建页面大小选择列表的代码,但我宁愿为此设置A元素(如SO).这个挑战的一部分与#2有关,部分与基于记录的存在/不存在隐藏/显示该UI元素有关.换句话说,如果有页面记录,我只想包含页面大小的链接.此外,我更喜欢自动包含其他QS变量(即页面,存储桶,排序),而不必在link_to中按名称包含它们.

ruby-on-rails query-string

198
推荐指数
4
解决办法
21万
查看次数

如何以内存效率的方式缩小到适合std :: vector?

我想'缩小'适合' std::vector,将其容量减小到精确的大小,以便释放额外的内存.标准技巧似乎是这里描述的:

template< typename T, class Allocator >
void shrink_capacity(std::vector<T,Allocator>& v)
{
   std::vector<T,Allocator>(v.begin(),v.end()).swap(v);
}
Run Code Online (Sandbox Code Playgroud)

缩小到适合的全部意义是节省内存,但是这种方法首先不创建深层副本然后交换实例吗?所以在某些时候 - 构建副本时 - 内存使用量是否翻了一倍?

如果是这种情况,是否有一种更符合记忆的缩小方法?(在我的情况下,矢量非常大,我无法承受原始内容以及随时在内存中的副本.)

c++ stl vector capacity

8
推荐指数
1
解决办法
6183
查看次数

在.NET 4 TPL中杀死一个死锁的任务

我想开始使用任务并行库,因为这是执行异步操作的推荐框架.我无法找到的一件事是强制中止的任何方法,例如Thread.Abort提供的内容.

我特别关注的是我安排运行代码的任务,我不希望完全信任.特别是,我不能确定这个不受信任的代码不会死锁,因此我无法确定使用此代码的任务我是否会完成.我想远离真正的AppDomain隔离(由于编组的开销和复杂性),但我也不想让任务线程挂起,死锁.有没有办法在TPL中做到这一点?

.net parallel-processing deadlock task task-parallel-library

6
推荐指数
1
解决办法
5035
查看次数

用一对索引STL地图是个好主意吗?

我只是想知道创建数据结构是否是个好主意

std::map< std::pair<int,int>,std::string >
Run Code Online (Sandbox Code Playgroud)

只是想知道如何在内部订购这对......:S

谢谢!

c++ stl stdmap std-pair

2
推荐指数
1
解决办法
1098
查看次数

C#:Windows窗体:什么可能导致Invalidate()不重绘?

我正在使用Windows窗体.很长一段时间,pictureBox.Invalidate();努力重新绘制屏幕.但是,它现在不起作用,我不知道为什么.

this.worldBox = new System.Windows.Forms.PictureBox();
this.worldBox.BackColor = System.Drawing.SystemColors.Control;
this.worldBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.worldBox.Location = new System.Drawing.Point(170, 82);
this.worldBox.Name = "worldBox";
this.worldBox.Size = new System.Drawing.Size(261, 250);
this.worldBox.TabIndex = 0;
this.worldBox.TabStop = false;
this.worldBox.MouseMove += new 
    System.Windows.Forms.MouseEventHandler(this.worldBox_MouseMove);
this.worldBox.MouseDown += new 
    System.Windows.Forms.MouseEventHandler(this.worldBox_MouseDown);
this.worldBox.MouseUp += new 
    System.Windows.Forms.MouseEventHandler(this.worldBox_MouseUp);
Run Code Online (Sandbox Code Playgroud)

在我的代码中调用以适当地绘制世界:

view.DrawWorldBox(worldBox, canvas, gameEngine.GameObjectManager.Controllers, 
    selectedGameObjects, LevelEditorUtils.PREVIEWS);
Run Code Online (Sandbox Code Playgroud)

View.DrawWorldBox:

public void DrawWorldBox(PictureBox worldBox,
    Panel canvas,
    ICollection<IGameObjectController> controllers,
    ICollection<IGameObjectController> selectedGameObjects,
    IDictionary<string, Image> previews)
{
    int left = Math.Abs(worldBox.Location.X);
    int top = Math.Abs(worldBox.Location.Y);
    Rectangle screenRect = new Rectangle(left, top, canvas.Width, …
Run Code Online (Sandbox Code Playgroud)

c# winforms

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

466
推荐指数
5
解决办法
19万
查看次数

我的老师应该在我的高级C++课程中谈到什么?[需要建议]

我的高级C++老师已经开始上课,让学生提出我们想要的任何主题.有哪些好的高级C++主题要知道?我们已经涵盖了:

  • 模板元编程
  • STL(显然)
  • 对boost库的介绍

请提供建议的理由.

c++

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

jQuery.Ajax使用数组数据发出错误的请求

我有以下数组:

var idParam = ["1","2","3"];
Run Code Online (Sandbox Code Playgroud)

我想发送这些数据作为请求使用jQuery.ajax,我正在做什么:

        $.ajax({
        type: "GET",
        url: "Services/GetInfo.ashx",
        data: { "id": idParam },
        contentType: "application/text",
        dataType: "json",
        success: function(result)
        {
...
        },
        error: function(XMLHttpRequest, textStatus, errorThrown)
        {
            ...
        }
});
Run Code Online (Sandbox Code Playgroud)

但结果我有以下丑陋的字符串:( ?id[]=1&id[]=2&id[]=4实际上它更加丑陋:) id%5B%5D=1&id%5B%5D=2&id%5B%5D=4.

怎么做才能得到正常的字符串:id=1&id=2&id=4?? 谢谢

arrays ajax jquery

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

在PHP中更改基本路径

我需要更改“相对包含路径”所基于的文件夹。

我当前可能在此文件夹中:C:\ ABC \ XYZ \ 123 \ ZZZ

在这种情况下,路径“ ../../Source/SomeCode.php”实际上位于以下文件夹中:C:\ ABC \ XYZ \ Source

并且realpath('。')='C:\ ABC \ XYZ \ 123 \ ZZZ';

但是,如果realpath('。')是“ C:\ Some \ Other \ Folder”

然后,在这种情况下,路径“ ../../Source/SomeCode.php”实际上将在此文件夹中:C:\ Some \ Source

如何更改“。”代表的文件夹 在realpath()中?

像这样:

echo ('BEFORE = '.realpath('.')); // BEFORE = C:\ABC\XYZ\123\ZZZ
// Some PHP code here...
echo ('AFTER = '.realpath('.')); // AFTER = C:\Some\Other\Folder
Run Code Online (Sandbox Code Playgroud)

如realpath()所示,如何更改以“。”表示的文件夹?

php

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

NSWindowController windowDidLoad未调用

我有一个使用NSWindowController子类的简单Cocoa应用程序.在笔尖我设置:

  • 文件所有者的类到我的NSWindowController子类
  • 文件所有者的"窗口"出口到笔尖中的主要NSWindow.

我的NSWindowController子类的init方法被调用(我称之为超级),但不管我做什么都不会调用windowDidLoad.

我必须遗漏一些明显的东西,但对于我的生活,我无法弄清楚它是什么.

cocoa nswindowcontroller

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