小编Jaz*_*zzy的帖子

命名为锚点(A),其中NAME与DIV ID冲突相同

我在一个使用哈希监听器的站点上工作,以显示和隐藏内容DIV并滚动到同名的命名锚点.

我有一个奇怪的问题,它不是滚动到锚点,而是滚动到DIV,其ID与锚点的名称相同.

一旦我将DIV ID更改为不同的内容,行为就像预期的那样.

我似乎无法找到任何关于此的文档,并且想知道这是否是记录在案的行为.

有效的代码:

<a name="top">top</a>

<p id="bottomx" style="height: 1800px;">
<a href="#top">top</a>
<a href="#bottom">bottom</a>
<br>
</p>
<a name="bottom">bottom</a>
Run Code Online (Sandbox Code Playgroud)

没有按预期工作:

<a name="top">top</a>

<p id="bottom" style="height: 1800px;">
<a href="#top">top</a>
<a href="#bottom">bottom</a>
<br>
</p>
<a name="bottom">bottom</a>
Run Code Online (Sandbox Code Playgroud)

在第二个例子中,它将滚动到名为"bottom"的P.同样,如果我在页面底部创建一个ID为"bottom"的DIV,并且我点击了page.html#bottom,它会向下滚动到那个DIV.

看起来很混乱.知道为什么这样做?Safari和FF中的行为相同.

html url anchor

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

使用UUID PK的Laravel LastInsertId

我试图使用Laravel 4将UUID用作主键.

没有找到关于这个主题的太多信息我决定在MySQL中使用一个触发器来设置id列,其值为UUID()on insert.

根据我的阅读,我需要在模型中设置var

public $incrementing = false;
Run Code Online (Sandbox Code Playgroud)

在我的迁移文件中,每个表都有这样的内容:

//set default id to UUID, requires thread_stack in my.cnf to be 196k
function makeTrigger($tableName)
{
    DB::unprepared('CREATE TRIGGER '.$tableName.'_trigger_id BEFORE INSERT ON '.$tableName.' FOR EACH ROW SET NEW.id = UUID()');
}

$tableName = 'sites';
Schema::create($tableName, function($table)
{
    $table->string('id', 36)->primary();
    $table->string('name', 50);
    $table->string('development_url', 50);
    $table->string('production_url', 50);
    $table->boolean('launched')->default(0);
    $table->string('test');
    $table->timestamps();
    $table->softDeletes();
});
makeTrigger($tableName);
Run Code Online (Sandbox Code Playgroud)

虽然我可以插入具有UUID的这样的记录,但如果在模型中设置了$ incrementing = false,则无法返回ID.

如果我删除该var并且我使用的是UUID,则返回的id为0.如果我在迁移文件中使用增量('id'),则返回真实的id.

我正在构建一个在规范中使用UUID的应用程序,因此我想知道这是否可以在Laravel 4中使用.

如果我无法使用该ID

$user = User::create($userdata);

return $user->id;
Run Code Online (Sandbox Code Playgroud)

那么如何将id用于关系呢?(使用$ user-> save();)的相同问题

根据我的理解,Eloquent期待auto_increment回归,但似乎应该有办法让任何id回来.

为什么这不起作用?

任何有关这一领域的见解将不胜感激,因为我似乎无法找到关于这个主题的任何真实文档.

mysql uuid laravel eloquent laravel-4

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

具有可选参数的Laravel Eloquent查询

我试图了解是否有一种简单的方法将可变数量的参数传递给Eloquent中的查询,希望使用array.

根据我的发现,似乎没有办法在没有循环Input查看请求中设置的内容的情况下执行此操作.

示例:Laravel Eloquent搜索两个可选字段

这样可行,但在复杂性/不雅性方面让我觉得非Laravel.

这就是我的地方,这可能是不可能的,只是希望其他人解决了类似的问题:

$where = array("user_id" => 123, "status" => 0, "something else" => "some value");

        $orders = Order::where($where)->get()->toArray();
        return Response::json(array(
                'orders' => $orders
                ),
            200
        );
Run Code Online (Sandbox Code Playgroud)

那当然会返回一个错误strtolower() expects parameter 1 to be string, array given.

这可能吗?

laravel eloquent

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

GraphQL错误“字段必须是具有字段名称作为键的对象或返回此类对象的函数。”

为什么我从架构文件中收到此错误?

错误:

graphql/jsutils/invariant.js:19
throw new Error(message);
^

Error: Entity fields must be an object with field names as keys or a     function which returns such an object.
Run Code Online (Sandbox Code Playgroud)

错误围绕着entity支柱PersonType。msg指示上的每个字段Entity都应该是一个对象,但是我在任何地方都没有看到这样的示例。

基本上,我试图基于Person查询返回的值从DuckDuckGo API中获取一些数据。从API返回的数据是一个具有许多属性的对象,我试图使用其中的两个来entity在我的对象上填充一个Person对象。

我看过类型系统文档,但看不到答案。http://graphql.org/docs/api-reference-type-system/

这是在Node上运行并提供给GraphiQL UI的代码。

任何建议,将不胜感激!谢谢。

码:

const PersonType = new GraphQLObjectType({
name: 'Person',
description: '...',

fields: () => ({
    name: {
        type: GraphQLString,
        resolve: (person) => person.name
    },
    url: {
        type: GraphQLString,
        resolve: (person) => person.url
    },
    films: {
        type: …
Run Code Online (Sandbox Code Playgroud)

javascript node.js graphql graphql-js

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

似乎无法将404和Location标头一起发送

我试图在数据库结果为空(这是产品页面)时发送两者.

我现在使用的代码,有效:

    header("Status: 404 Not Found");
    include_once("404.html");
    exit;
Run Code Online (Sandbox Code Playgroud)

我最初尝试过的代码不起作用:

    header("Status: 404 Not Found");
    header("Location: 404.html");
    exit;
Run Code Online (Sandbox Code Playgroud)

使用后面的代码,我可以使用其中之一,但不能同时使用两者.换句话说,我可以发送404标头并看到它显示在Wireshark中,或者我可以发送Location标头并重定向,但是如果我尝试发送两者,则只会发送404并且Location头也不会重定向.

我已经用可行的解决方案解决了问题,但我想知道为什么会这样.

带有FastCGI的Linux上的PHP 5.2.

谢谢.

php header http-headers http-status-code-404

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

为什么我需要在 `npm install` 之后运行 `node install.js` 来“重新安装”Puppeteer?(错误:未下载 Chromium 修订版。)

否则,当我尝试使用 Puppeteer 运行测试时,我得到Error: Chromium revision is not downloaded. Run "npm install" or "yarn install"

似乎npm i在我的部门中使用 Puppeteer 就足够了,但安装完成后,我需要cd进入/node_modules/puppeteer然后运行node install.js才能下载正确的修订版。

当我做初始时npm i我看到

> puppeteer@1.13.0 install /Users/.../node_modules/puppeteer
> node install.js

Downloading Chromium r549031 - 76 Mb [====================] 100% 0.0s
Chromium downloaded to /Users/.../node_modules/puppeteer/.local-chromium/mac-549031
Run Code Online (Sandbox Code Playgroud)

但这不起作用,我收到修订错误。

在我node install.js进入 Puppeteer 的目录后,我看到

Downloading Chromium r637110 - 85.9 Mb [====================] 100% 0.0s
Chromium downloaded to /Users/.../node_modules/puppeteer/.local-chromium/mac-637110
Run Code Online (Sandbox Code Playgroud)

那么我就可以走了。

有什么想法吗?这是在 macOS 和 Node 10.15 上进行的,我认为在 CI …

chromium puppeteer jest-puppeteer

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

使用php cause 0000-00-00/00:00:00将空日期/时间插入到mysql中

我在这里和其他地方看到了一些问题,在某些情况下会解决这个问题,但不是我需要的问题.

我正在使用一个脚本,该脚本存储一组值,以根据更改执行插入或更新.

设置了一些日期/时间,有些日期/时间为空.我正在尝试使用$ var = NULL,然后使用insert插入...('{$ var}')并获得00:00:00的时间(如果为null)和时间(如果设置了时间).

插入$ var ="NULL"并插入...('{$ var}')并获得00:00:00(如果为null)和时间(如果设置了时间).

如果我删除插入的引号...({$ var})它的作用是null,但是如果日期不是null,它当然会失败.

我有另一个VARCHAR字段我正在做同样的事情,它工作正常.即如果有一个字符串,它作为一个字符串传入,如果它是空的,我设置var = null.我在插入查询上使用引号,如果它为null,则为null,如果不为null,则插入字符串.

使用条件语句将需要相当大的重写,所以我希望避免这种情况.

关于如何在没有IF语句(如果可能)的情况下完成这项工作的任何建议都会有所帮助.

谢谢.


我已经测试了这几种方式,如果没有制作日期/时间字段VARCHAR,我无法获得所需的结果,我不想这样做.这是db结构,插入查询和结果.

id  int(11)         No  None    AUTO_INCREMENT                          
event_new_date_start    date            Yes NULL                                
event_new_time_start    time            Yes NULL                                
event_link  varchar(150)    latin1_swedish_ci       Yes NULL    




    $event_new_date_start1 = 'NULL';
    $event_new_time_start1 = 'NULL';
    $event_link1 = 'NULL';
    $event_new_date_start2 = '2011-04-04';
    $event_new_time_start2 = '13:13';
    $event_link2 = 'http://abc.com';
    $event_new_date_start3 = NULL;
    $event_new_time_start3 = NULL;
    $event_link3 = NULL;

    mysql_query("
    insert into test_dates (event_new_date_start, event_new_time_start, event_link) values
    ('{$event_new_date_start1}', '{$event_new_time_start1}', '{$event_link1}')
    ");

    mysql_query("
    insert into …
Run Code Online (Sandbox Code Playgroud)

php mysql string null datetime

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

在.bowerrc中Bower多个注册表URL

我希望在我的Bower设置中定义多个URL,以支持使用私有内部注册表以及默认的Heroku注册表.

我尝试了多次遇到的设置,但似乎无法使其正常工作.

规范中没有任何内容表明这是可能的,但有证据表明其他人已经开始这样做了.

任何人都能指出我在正确的方向吗?

这是可能的,如果是的话,它是如何完成的?

javascript node.js gruntjs bower

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

每当我创建一个新视图时,我都要在MAMP上运行Laravel,我必须将CHMOD存储/视图设置为777,然后是775

我正在阅读Shawn McCool的书(好书),每次我创建一个新视图,并尝试加载它,我得到一个权限错误.

我想知道为什么生成的视图没有读取权限.奇怪的是,如果我chmod到775,我仍然得到错误,我必须777然后775.

任何人都可以对此有所了解,为什么会发生这种情况?

谢谢!

编辑:

添加新视图后出错

file_put_contents(/Users/jason/Sites/laravel1/storage/views/5c4b7b4707d658dffe52d481be6c680e): failed to open stream: Permission denied

Permissions on storage/views
drwxrwxr-x@  7 jason  jason  238 Mar  7 17:15 views
Run Code Online (Sandbox Code Playgroud)

新视图的权限 -rw-r--r--

之后出错 chmod 775 views

 file_put_contents(/Users/jason/Sites/laravel1/storage/views/5c4b7b4707d658dffe52d481be6c680e): failed to open stream: Permission denied
Run Code Online (Sandbox Code Playgroud)

之后的权限 chmod 775 views

drwxrwxr-x@  7 jason  jason  238 Mar  7 17:15 views
Run Code Online (Sandbox Code Playgroud)

之后chmod 777 views,它的工作原理

drwxrwxrwx@  8 jason  jason  272 Mar  7 17:25 views
Run Code Online (Sandbox Code Playgroud)

之后chmod 777 views它仍然有效

drwxrwxr-x@  8 jason  jason  272 Mar  7 …
Run Code Online (Sandbox Code Playgroud)

php mamp views chmod laravel

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

你可以从一个冒泡到身体的元素中删除$ .on()添加的事件监听器吗?

鉴于这样的事情$('body').on('click', 'a', someReference);是否有任何方法可以删除特定用途的侦听<a>$.off()

javascript jquery javascript-events

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

具有多个Node.js主机的Socket.io,向所有客户端发出

我是Socket.io的新手,并试图找到解决这个问题的最佳方法.

我们有四个在负载均衡器后面运行的Node.js应用程序实例.

我想要实现的是另一个应用程序将一些数据发送到负载均衡器URL,如果关闭到其中一个实例,它将进行处理.

接收实例将存储数据,然后使用Socket.io将数据发送到连接的客户端.

问题是浏览器/客户端一次只能连接到单个实例.

我想确定是否有办法立即向所有客户发出?

或者让客户端使用io.connect连接到多个服务器?

或者这是Redis的案例?

websocket redis node.js socket.io

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