小编apo*_*fos的帖子

如何为Response :: json()指定默认参数

有没有办法为Response :: json()指定默认参数?问题是,在我的情况下,Response :: json($ data)返回utf8,因为我需要指定额外的参数才能读取它:

$headers = ['Content-type'=> 'application/json; charset=utf-8'];
return Response::json(Course::all(), 200, $headers, JSON_UNESCAPED_UNICODE);
Run Code Online (Sandbox Code Playgroud)

这很无聊,看起来多余......

php laravel

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

ReactJS JSX toString()

我正在写一个基于React的文档网站.我想展示使用我的框架中给定组件所必需的代码.同时我想展示实际的组件运行,就像一个并排的视图.

目前,我正在将组件添加为参考实现的String,并将组件添加为运行场景的JSX.像这样的东西:

var ButtonDoc = React.createClass({
  render: function () {
    let buttonComponent = (
      <Button label="Add" />
    );

    let buttonCode = `<Button label="Add" />`;

    return (
      <div>
        {buttonComponent}
        <pre><code>{buttonCode}</code></pre>
      </div>
    );
  }
});
Run Code Online (Sandbox Code Playgroud)

问题:有没有办法可以获得给定React组件的字符串表示而无需复制代码?

我期待这样的事情:

var ButtonDoc = React.createClass({
  render: function () {
    let buttonComponent = (
      <Button label="Add" />
    );

    let buttonCode = `${buttonComponent}`;

    return (
      <div>
        {buttonComponent}
        <pre><code>{buttonCode}</code></pre>
      </div>
    );
  }
});
Run Code Online (Sandbox Code Playgroud)

给定代码的输出是object [object].

javascript reactjs

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

Spatie 媒体库 - 转换后删除原件

是否可以使用Spatie Media Library(v7)转换图像后删除原始文件 - 例如,客户端上传巨大的分辨率文件,但我们只需要它们大约1000px宽,并且不想存储巨大的原始文件。

提前干杯!

laravel laravel-medialibrary

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

带有多个标签的 Laravel 刷新缓存

我在 Laravel 5.2 上使用 Redis 缓存,我的密钥有 2 个标签(基本上),年份和来源。

例子:

$this->cache->tags(['online', 2016])->put("key1", $value1, 10));
$this->cache->tags(['online', 2016])->put("key2", $value2, 10));
$this->cache->tags(['online', 2017])->put("key3", $value3, 10));
$this->cache->tags(['online', 2017])->put("key4", $value4, 10));

$this->cache->tags(['database', 2016])->put("key5", $value5, 10));
$this->cache->tags(['database', 2016])->put("key6", $value6, 10));
$this->cache->tags(['database', 2017])->put("key7", $value7, 10));
$this->cache->tags(['database', 2017])->put("key8", $value8, 10));
Run Code Online (Sandbox Code Playgroud)

我想刷新标签 2016 和在线的缓存。

使用这个$this->cache->tags(['online', 2016])->flush();它将用任何标签刷新所有内容,即,online 或者 2016(在本例中为 key1、key2、key3、key4、key5、key6)。

我想删除包括所有标签在内的所有内容,即两者 online2016(在这种情况下只有 key1 和 key2)

php caching redis laravel-5.2

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

SVG 工具提示 z-index 和 html 标题

我正在尝试使用带有非常大的工具提示的 HTML 标题。但是我似乎无法让工具提示背景出现在标题上方。

这是我的代码:

var chart = new Highcharts.Chart({
  "chart": {
    "type": "gauge",
    "renderTo": "chart-2-container",
    "marginTop": 60
  },
  "series": [{
    "data": [{
      "y": 55.6,
      "name": "Area",
      "tooltip": "Area: 50.6 %<br/>Minimum: 50.6<br/>3rd quartile: 57.1<br/>2nd quartile: 59.4<br/>1st quartile: 64.7<br/>Maximum: 75.7"
    }],
    "name": "%"
  }],
  "tooltip": {
    "borderColor": "#E2E2E2",
    "borderRadius": 5,
    "backgroundColor": "white",
    "style": {
      "color": "#454545",
      "fontSize": 14,
      "fontFamily": "Arial, sans-serif",
      "zIndex": 9999,
      "lineHeight": 14 * 1.4
    },
    "formatter": function() {
      return this.point.tooltip;
    }
  },
  "title": {
    "floating": true,
    "useHTML": true,
    "style": …
Run Code Online (Sandbox Code Playgroud)

javascript jquery highcharts

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

防止弹出窗口关闭时开发人员工具窗口关闭

我正在尝试调试登录窗口。这个过程是这样的:

  1. 用户访问站点A
  2. 用户单击以使用 OAuth2 提供商站点 B 登录
  3. 站点 B 将打开一个弹出窗口,提示用户输入凭据
  4. 登录完成后,站点 B 会重定向到站点 A 的指定页面。
  5. 站点 A 将关闭弹出窗口并使用从站点 B 获取的 OAuth2 连接数据让用户登录。

如果用户已经通过站点 B 登录,则弹出窗口将打开并经历相同的过程,但“立即”关闭(意味着它直接跳转到重定向,而不需要用户的凭据)。发生这种情况是因为站点 A 过去已被用户预先授权通过站点 B 进行连接。

我们控制站点 B,但不控制站点 A。

现在,我们正在尝试诊断此过程中存在的问题,但遇到了困难。为此,我们尝试在站点 B 弹出窗口上保持开发人员工具窗口打开。开发工具窗口会自动打开,因为我已经使用标志启动了 chrome,--auto-open-devtools-for-tabs但是当窗口关闭时,开发工具选项卡也会关闭,我将丢失在此过程中实际发生的所有信息。我的问题是,在关闭窗口后是否可以保持开发工具窗口打开。

这个问题类似于如何防止 Chrome 开发人员工具在当前浏览器窗口关闭时关闭?但它有以下不同:

我们无法为窗口卸载事件添加断点,因为加载和卸载是立即发生的。我们需要的是即使窗口关闭后也不会关闭开发工具的东西。

有没有办法让开发工具保持打开状态,或者至少在卸载时保存它的快照,而不必在窗口实际打开时执行此操作?我们记得类似命令行标志或断点之类的东西吗?

编辑:我在保留网络选项卡日志方面取得了部分进展,方法是--log-net-log=<filename>.json将所有请求转储到文件中以便稍后检查。虽然这实际上并没有回答我的问题,但它在帮助方面大有帮助,并且足够有用,可以提及,以防它对其他人有用。

google-chrome google-chrome-devtools

5
推荐指数
0
解决办法
3764
查看次数

在 Laravel 中找到交点的最佳方法

我在 Laravel 应用程序中有用户和聊天模型。用户可以成为许多聊天的成员,因此我在聊天和用户之间建立了多对多关系 -belongsToMany使用。

假设我知道的用户 ID 很少,我想检索所有常见聊天(他们同时是成员的聊天,例如,具有给定 ID 的所有用户都分组的群聊)。这个查询应该如何使用 Laravel 构建?

php mysql laravel eloquent

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

使用 spatie/laravel-analytics,如何获取特定 pagePath 的页面浏览量?

我刚刚开始研究 spatie/laravel-analytics,这是一个用于从 Google Analytics API 获取数据的包。我现在有点迷失了,尽管文档似乎很薄……要么就是我没有在寻找正确的东西。

我想做的事情感觉应该很简单,获取特定 URL 在一段时间内每天的页面浏览量

我当前的代码块如下所示:

$analyticsData = Analytics::performQuery(
    Period::days(7),
    'ga:pageviews',
    [
        'metrics' => 'ga:pageviews',
        'dimensions' => 'ga:pagePath',
        'filters' => 'ga:pagePath==/pasta-recipes/lasagne/'
    ]
    
);
var_dump($analyticsData);
Run Code Online (Sandbox Code Playgroud)

一如既往,任何帮助表示赞赏。

analytics google-analytics laravel

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

Composer 版本匹配错误 laravel + spatie medialibrary

我尝试通过 laravel 安装程序使用laravel new <appname>.

这工作没有问题。一旦我尝试安装,spatie/medialibrary就会出现以下无法解释的错误:

$ composer require "spatie/laravel-medialibrary:^9.0.0"
./composer.json has been updated
Running composer update spatie/laravel-medialibrary
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - spatie/laravel-medialibrary[9.0.0, ..., 9.6.4] require spatie/image ^1.4.0 -> satisfiable by spatie/image[1.4.0, ..., v1.x-dev].
    - spatie/image[1.10.0, ..., v1.x-dev] require league/glide ^1.6 -> satisfiable by league/glide[1.6.0, 1.6.1, 1.7.0, 1.x-dev].
    - spatie/image[1.7.5, ..., 1.9.0] require league/glide ^1.4 -> satisfiable …
Run Code Online (Sandbox Code Playgroud)

php laravel composer-php laravel-medialibrary

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

当前有 9 条规则的侦听器当前正在使用标识符优先级为 10 的错误 ListenerRule

我有以下(最小测试)cloudformation 模板:

AWSTemplateFormatVersion: 2010-09-09
Description: Test template

Resources:
  TestTargetGroupListener:
    Type: AWS::ElasticLoadBalancingV2::ListenerRule
    Properties:
      Actions:
        - Type: fixed-response
          FixedResponseConfig:
            ContentType: text/plain
            MessageBody: It works
            StatusCode: 200
      Conditions:
        - Field: host-header
          HostHeaderConfig:
            Values:
              - example.com
      ListenerArn: arn:aws:elasticloadbalancing:eu-west-1:<accountid>:listener/app/<alb name>/xxx/xxx
      Priority: 10
Run Code Online (Sandbox Code Playgroud)

当我尝试部署它时,我收到消息:

类型为“AWS::ElasticLoadBalancingV2::ListenerRule”且标识符为“优先级”10”的资源当前正在使用(服务:ElasticLoadBalancingV2,状态代码:400,请求 ID:...,扩展请求 ID:null)”已存在。 “(RequestToken:...,HandlerErrorCode:已经存在)

我检查了监听器并确认当前有 9 条规则(+ 最后一条规则)。

我还尝试将优先级设置为 9(如果它是基于 0 的)和 11(因为我不确定“最后”是否计入优先级),但是我收到相同的消息(对于我尝试的每个优先级)。

监听器规则如下所示:

在此输入图像描述

我不知道为什么会发生这种情况。我之前使用过类似的模板,在同一个监听器上没有任何问题。

更新:我通过使用侦听器优先级 4 来实现此功能,它(令人惊讶地)有效并使侦听器在控制台中显示为第二!我还是不明白它是如何工作的。当我尝试在 AWS Web 控制台上创建 ECS 服务、附加到相同的负载侦听器并且在选择侦听器优先级时遇到相同的问题时,我发现可以使用 4。然而,在 Web 控制台上,我能够比通过 CF 模板更快地尝试数字。我仍然不明白这里的问题是什么,我仍然不知道如何正确诊断这个错误。

更新2

新的 AWS 控制台现在除了序号(这是之前唯一显示的内容)之外还显示规则优先级,因此这不再是问题。

amazon-web-services aws-cloudformation aws-application-load-balancer

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