小编Roo*_*eyl的帖子

排序数组元素(带数字的字符串),自然排序

我有一个像阵列;

["IL0 Foo", "PI0 Bar", "IL10 Baz", "IL3 Bob says hello"]
Run Code Online (Sandbox Code Playgroud)

并且需要对它进行排序以使它看起来像;

["IL0 Foo", "IL3 Bob says hello", "IL10 Baz", "PI0 Bar"]
Run Code Online (Sandbox Code Playgroud)

我尝试过一种排序功能;

function compare(a,b) {
  if (a < b)
     return -1;
  if (a > b)
    return 1;
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是这给了订单

["IL0 Foo", "IL10 Baz", "IL3 Bob says hello", "PI0 Bar"]
Run Code Online (Sandbox Code Playgroud)

我试图想到一个可行的正则表达式,但无法理解它.
如果它有助于格式将始终是2个字母,x数量的数字,然后任意数量的字符.

javascript sorting jquery

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

使用json的optgroup创建html选择

我有一个JSON字符串(来自php json_encode),看起来像;

var json = [{"Foo":[{"id":1,"name":"aaa"},{"id":2,"name":"bbb"}]},{"Bar":[{"id":3,"name":"ccc"},{"id":4,"name":"ddd"}]}];
Run Code Online (Sandbox Code Playgroud)

我希望能够在表单中使用Javascript/jQuery创建一个html选择;

<select>
    <optgroup label="Foo">
        <option value="1">aaa</option>
        <option value="2">bbb</option>
    </optgroup>
    <optgroup label="Bar">
        <option value="3">ccc</option>
        <option value="4">ddd</option>
    </optgroup>
</select>
Run Code Online (Sandbox Code Playgroud)

在处理json方面我得到了这么远(我不知道),但是jsFiddle无法运行它并冻结我的浏览器.

var json = [{"Foo":[{"id":1,"name":"aaa"},{"id":2,"name":"bbb"}]},{"Bar":[{"id":3,"name":"ccc"},{"id":4,"name":"ddd"}]}];

$.each(json, function(i,group) {
    console.log(i);
    $.each(group, function(j, option) {
        console.log(j, option);
        $.each(option, function(k, item) {
            console.log(k, item);
        });
    });
});?
Run Code Online (Sandbox Code Playgroud)

javascript jquery json

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

使用Sonata Admin和Propel添加相关项目

我有Sonata Admin并运行使用Propel,定义了两个模型/ Admin类; Portfolio并且Image,投资组合项目可以有很多图像.

我有一个ImageAdmin允许上传图像,需要与投资组合项目相关联.
PortfolioAdmin我可以使用模型表单映射器类型将现有图像添加到项目组合项.

有没有办法在添加/编辑项目组合项目时添加添加/删除图像的功能,而不是只选择现有项目,或者只是添加/删除相关项目的方法而不是删除图像对象,如同我此刻

我知道我可以选择为组合类编写自定义管理控制器,但有没有预先构建的方法来实现这种行为?

作为参考,一些代码摘录我所做的事情;
Schema.xml的

<database name="default" namespace="MyBundle\Model" defaultIdMethod="native">

    <table name="portfolio">
        <column name="id" type="integer" required="true" primaryKey="true" autoIncrement="true" />
        <column name="title" type="varchar" primaryString="1" size="100" />
        <column name="description" type="LONGVARCHAR" />
        <behavior name="sluggable" />
        <behavior name="timestampable" />
        <behavior name="archivable" />
    </table>

    <table name="image">
        <column name="id" type="integer" required="true" primaryKey="true" autoIncrement="true" />
        <column name="portfolio_id" type="integer" required="true" />
        <column name="title" type="varchar" primaryString="1" size="100" />
        <column name="path" type="varchar" size="255" />
        <column name="description" type="LONGVARCHAR" …
Run Code Online (Sandbox Code Playgroud)

propel symfony sonata-admin

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

Symfony2 Validator Constraint GreaterThan on other property

我的验证在yaml文件中定义,如此;

# src/My/Bundle/Resources/config/validation.yml
My\Bundle\Model\Foo:
    properties:
        id:
            - NotBlank: 
                groups: [add]
        min_time:
            - Range:
                min: 0
                max: 99
                minMessage: "Min time must be greater than {{ limit }}"
                maxMessage: "Min time must be less than {{ limit }}"
                groups: [add]
        max_time:
            - GreaterThan:
                value: min_time
                groups: [add]
Run Code Online (Sandbox Code Playgroud)

如何使用验证器约束GreaterThan来检查另一个属性?
例如,确保max_time大于min_time?

我知道我可以创建一个自定义约束验证器,但你肯定可以使用GreaterThan约束来完成它.
希望我在这里遗漏一些非常简单的东西

php validation symfony

6
推荐指数
2
解决办法
6924
查看次数

Docker - 将新文件创建为 www-data 而不是 root

我有一个基本的 docker 容器,我使用 docker-compose(第 3 版)构建它以启动基本的 LAMP 堆栈。
我遇到的问题是在 docker 容器内创建的文件始终归 root 所有,因此我无法在本地编辑它们。
我尝试将容器 www-data 用户设置为与我的本地用户具有相同的 uid,这可行,但新文件仍由 root 创建。
如何在容器中创建可以在本地编辑的文件?

我的撰写文件;

version: "3"

services:
    webserver:
        build: 
            context: ./docker/containers/webserver
        container_name: 'apache7.1-webserver'
        restart: 'always'
        ports:
            - "80:80"
            - "443:443"
        links: 
            - mysql
        volumes: 
            - ${DOCUMENT_ROOT}:/var/www/html
            - ${PHP_INI}:/usr/local/etc/php/php.ini
            - ${VHOSTS_DIR}:/etc/apache2/sites-enabled
            - ${APACHE_LOG_DIR}:/var/log/apache2
    mysql:
        build: ./docker/containers/mysql
        container_name: 'apache7.1-mysql'
        restart: 'always'
        ports:
            - "3306:3306"
        volumes: 
            - ${MYSQL_DATA_DIR}:/var/lib/mysql
            - ${MYSQL_LOG_DIR}:/var/log/mysql
        environment:
            MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
            MYSQL_DATABASE: ${MYSQL_DATABASE}
            MYSQL_USER: ${MYSQL_USER}
            MYSQL_PASSWORD: ${MYSQL_PASSWORD}
    redis:
        container_name: 'apache7.1-redis'
        image: redis:latest
        ports:
            - …
Run Code Online (Sandbox Code Playgroud)

docker docker-compose docker-container

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

Netbeans和PhpDocumentor

我已经下载了Netbeans 7.0 beta,因为我想给PhpDoc功能一个bash,但无法让它工作.我似乎在netbeans中的PhpDoc的配置选项上摔倒了.它要求脚本位置, 替代文字

但无论我输入什么,我都会得到错误;

** ERROR *****************************************************************
* Sorry, can't find the php.exe file.
* You must edit this file to point to your php.exe (CLI version!)
*    [Currently set to C:\usr\local\php\cli\php.exe]
* 
* NOTE: In PHP 4.2.x the PHP-CLI used to be named php-cli.exe. 
*       PHP 4.3.x renamed it php.exe but stores it in a subdir 
*       called /cli/php.exe
*       E.g. for PHP 4.2 C:\phpdev\php-4.2-Win32\php-cli.exe
*            for PHP 4.3 C:\phpdev\php-4.3-Win32\cli\php.exe
**************************************************************************
Press any key to continue . . . …
Run Code Online (Sandbox Code Playgroud)

windows user-interface netbeans phpdoc

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

Android - 像素逢低

我有一个绝对布局元素的面部图像(250px X 250px).我目前获得用户的触摸坐标并使用一些数学计算被触摸的内容(例如鼻子),然后相应地做一些事情.

我的问题是如何缩放它以适应可用的屏幕宽度.如果我将图像(在xml中)设置为fill_parent,那么坐标就会消失.这可以通过将触摸坐标转换为倾斜(如果是这样,如何)来解决,或者我需要获得屏幕宽度(再次转换为逢低)并使用更多数学来解决坐标问题?

任何和所有帮助表示赞赏.

android

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

在Codeigniter 2中扩展多个模型

如何设置CI2以允许扩展多个模型?

我只能扩展一个名为MY_Model的模型(放入/ application/core)(区分大小写).

选择我正在做的扩展模型; 在模型中..

require_once APPPATH.'core/MY_Another_model.php';
class Test_model extends MY_Another_model {
...
}
Run Code Online (Sandbox Code Playgroud)

我无法在核心系统代码中找到它所声明的位置,只允许将被扩展的模型称为MY_Model.

感谢您的帮助.

php codeigniter codeigniter-2

5
推荐指数
2
解决办法
4262
查看次数

jQuery jEditables - 使用optgroup选择

我使用jEditable,我想知道,如果,如果有可能有一个选择(类型=选择)与optgroups

javascript jquery jeditable

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

点击css动画后丢失的事件

为了笑,我在我的一个网站上放了一个Google-esk桶.
所有元素的第一次单击都可以正常工作,但之后不会再次触发.

我试过了.click,.on('click', function() {})都没有工作.
关于如何修复以及为什么会发生这种情况的任何想法?

基本的jsFiddle在这里

源代码示例;

<html>
    <head>
        <title>
            Roll Me
        </title>

        <style type="text/css">

        </style>

        <script>
        $(function() {
            $('#roll').on('click', function() {
                $('body').css({
                    "-moz-animation-name": "roll",
                    "-moz-animation-duration": "4s",
                    "-moz-animation-iteration-count": "1",
                    "-webkit-animation-name": "roll",
                    "-webkit-animation-duration": "4s",
                    "-webkit-animation-iteration-count": "1"
                });
            });
        });
        </script>
    </head>
    <body>
        <div id="roll">
            <h1>click me</h1>
        </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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