小编use*_*492的帖子

在 JSX 中的嵌套地图函数内反应 JS 打印数据

我正在尝试在嵌套地图函数中打印数据。出于某种原因,它不打印任何内容。这是我所拥有的:

  {dataFormat.protein_questions.map((item, index) => (
        <div key={_.uniqueId()} className="item">
         <div className="inline fields">
           <Field
              onChange={handleChange}
              name={`protein_question[${index}].units_of_measurement`}
              component="select"
              className="ui dropdown2"
              required>

                 {item.typing_methods.map((method, methodIndex) => {
                    method.unitsOfMeasurement.map((unit, unitIndex) => (
                       <option value={unit.title}>{unit.title}</option>
                    ));
                 })}

          </Field>
         </div>
       </div>
  ))}
Run Code Online (Sandbox Code Playgroud)

由于某种原因,选项没有在选择中打印任何数据。当我控制台记录嵌套循环内的数据时,它显示正常。有谁知道为什么会这样?

顺便说一下,这是在 JSX 视图文件中我的渲染函数中。

javascript nested-loops jsx reactjs

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

Laravel Blade 表单关闭问题

我在 Laravel 中有一个这样的表单:

    <div class="modal-body">
          {!! Form::model($questionGroup, ['route' => ['question_groups.update', $questionGroup->id, 'model_slug' => 'assessments', 'model_id' => $assessment->id], 'method' => 'patch']) !!}
          <p>TEST</p>
          {!! Form::close() !!}
    </div>
Run Code Online (Sandbox Code Playgroud)

这在我的源中输出以下内容:

<div class="modal-body">
   <form method="POST" action="http://localhost:8000/admin/question_groups/7?model_slug=assessments&amp;model_id=1" accept-charset="UTF-8"></form>
   <input name="_method" type="hidden" value="PATCH">
   <input name="_token" type="hidden" value="E6HzCmQvRGds6eETgdCv5KCsf0eyOtjxvqnidrTx">
   <p>TEST</p>
</div>
Run Code Online (Sandbox Code Playgroud)

我不知道为什么表格没有正确关闭。有任何想法吗?我正在使用 Laravel 5.5,此表单位于 Bootstrap Modal 中。

编辑:

以下是完整 html 的链接:https://gist.github.com/shabaz-ejaz/96be7b4b20ba9146436f1f9f1d274211

该文件相当大,因此请进行搜索question_groups.update,这就是表格开始的地方。

forms laravel laravel-blade laravel-5.5

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

MySQL JSON 数据类型是否对数据检索性能不利?

假设我有一个custom_properties用于媒体表的 MySQL JSON 数据类型:

在此处输入图片说明

custom_properties列中存储的 json 数据示例可能是:

{
 "company_id": 1, 
 "uploaded_by": "Name", 
 "document_type": "Policy", 
 "policy_signed_date": "04/04/2018"
}
Run Code Online (Sandbox Code Playgroud)

在我的 PHP Laravel 应用程序中,我会做这样的事情:

$media = Media::where('custom_properties->company_id', Auth::user()->company_id)->orderBy('created_at', 'DESC')->get();
Run Code Online (Sandbox Code Playgroud)

这将获取属于公司 1 的所有媒体项。

我的问题是,假设我们有100 万条媒体记录,就性能而言,这是一种获取记录的糟糕方式吗?谁能解释一下 MySQL 如何索引 JSON 数据类型?如果我们加入单独的表并对列进行索引,性能是否会显着提高?我想知道实际的性能差异是什么。

来自MySQL 官方文档

存储在 JSON 列中的 JSON 文档被转换为允许对文档元素进行快速读取访问的内部格式。当服务器稍后必须读取以这种二进制格式存储的 JSON 值时,不需要从文本表示中解析该值。二进制格式的结构使服务器能够直接通过键或数组索引查找子对象或嵌套值,而无需读取文档中它们之前或之后的所有值。

php mysql database performance json

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

Bootstrap 缩略图在移动设备上太小

我的网页上有一组 Bootstrap 缩略图,并且我已使用 class 设置了所有图像.img-responsive。当我在移动浏览器上打开页面时,缩略图显得太小,我什至无法使用 css 调整它们的大小。

这是我的缩略图:

  <div class="row">
      <div class="col-xs-6 col-md-3">
        <a href="#" class="thumbnail">
          <img src="images/thumbnails/traditional.jpg" class="img-rounded img-responsive" alt="...">
        </a>
      </div>
      <div class="col-xs-6 col-md-3">
        <a href="#" class="thumbnail">
          <img src="images/thumbnails/mehndi.jpg" class="img-rounded img-responsive" alt="...">
        </a>
      </div>
... altogether 12 thumbnails 
    </div>
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下媒体查询编辑手机尺寸设备的缩略图大小:

@media(max-width:767px){
    .thumbnail > img { 
    height:70px;
    width:120px;

    }
}
Run Code Online (Sandbox Code Playgroud)

然而宽度似乎没有超过80px,似乎我只能将宽度设置为80px左右,任何更高的值都不起作用。

如果我让缩略图保持原样而不尝试上述 CSS 代码,它们在移动设备上显得太小,我需要一种方法来仅增加移动设备上缩略图的大小

这是该网站的链接:

html css mobile twitter-bootstrap twitter-bootstrap-3

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

Enquire.js无法处理页面加载,仅在屏幕<= 480px时有效

所以我使用Enquire.js为我的网站添加和删除bootstrap的预定义css类.这是我有的:

一些引导HTML缩略图:

<div class="row">
  <div class="thumb thumb col-xs-12 col-md-3">
    <a href="#" class="thumbnail">
      <img src="..." class="img-rounded img-responsive" alt="...">
    </a>
  </div>
  <div id ="thumb" class="thumb col-xs-12 col-md-3">
    <a href="#" class="thumbnail">
      <img src="..." class="img-rounded img-responsive" alt="...">
    </a>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我已经设置了enquire.js,以便缩略图大小根据屏幕大小调整大小:

<script type="text/javascript">

var $info = $('.thumb');

    enquire.register("(max-width: 480px)", {

    match: function() {      
        $info.removeClass('col-xs-6');
        $info.addClass('col-xs-12');
    },


    unmatch: function() {
         $info.removeClass('col-xs-12');
         $info.addClass('col-xs-6');      
    }

    }).listen();

</script> 
Run Code Online (Sandbox Code Playgroud)

问题:

我遇到的问题是,只要屏幕尺寸减小到480px或更低,enquire.js代码就会启动.

因此,当首次加载网站时,调整大小代码将无法工作,直到我实际手动将其调整为480px或更低,然后您可以看到调整大小发生.

您可以在这里查看该网站

html javascript css twitter-bootstrap enquire.js

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

解析错误:语法错误,意外(T_VARIABLE)

我正在执行一些查询,并得到以下错误:

解析错误:语法错误,第22行意外的'$ section2'(T_VARIABLE)

第22行是:

$section2 = $db->prepare("INSERT INTO learning_style_scores VALUES (5,12,4)");
Run Code Online (Sandbox Code Playgroud)

我不知道为什么我得到这个,我检查了我的语法,一切似乎都是正确的.在$section1查询执行后,它基本上不喜欢任何东西

编辑:

我知道这很容易被SQL注入,但我这样做只是为了测试目的.

<?php
    session_start();

    try {
    $db = new PDO("mysql:dbname=questionnaire;host=localhost", "root", ""); 
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
    }


    catch(Exception $e)
    {
    echo 'Caught exception: ',  $e->getMessage(), "\n";
    }


    $session = md5(session_id());

    // insert section1 data into database
    $section1 = $db->prepare('INSERT INTO section1 VALUES (7,"test")');

    $section1->execute();?


    // insert learning style score into database
    $section2 = $db->prepare("INSERT INTO learning_style_scores VALUES (5,12,4)");

    $section2->execute();?
    ?>
Run Code Online (Sandbox Code Playgroud)

php mysql

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

如何验证富文本编辑器源

我在我的应用程序中使用CLEditor来填写用户将填写的富文本.

当我在PHP服务器端脚本中验证textarea元素时,我会进行所有检查,例如元素是否为空.

这有一个问题,尽管文本被清除,文本编辑器的源有时仍然存在.

这是我的意思的一个例子:

假设我有一个富文本编辑器,如下所示,我的标题是"写你的第一页!".

在此输入图像描述

以下是源代码查找上图: 在此输入图像描述

然后,当我仅删除文本而不是剩余任何空行时,文本周围的源仍然如下所示:

在此输入图像描述

PHP empty函数不会通过,因为它在技术上不是空的,因为文本编辑器中包含源代码.

这个问题是我不能依赖用户清除整个屏幕,包括空行,所以有没有办法摆脱任何不包含实际内容的来源,如上面的第二张图片所示?

HTML:

<textarea id="textarea" name="chapter"><h4 style="text-align: center;">Write your first page!</h4></textarea>
Run Code Online (Sandbox Code Playgroud)

html php wysiwyg rich-text-editor

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

使用jQuery循环使用JSON结构

我在通过jQuery循环JSON结构时遇到了一些麻烦,

这是我的JSON数据:

  {
    "suppliers": [
        {
            "Supplier": {
                "id": "5704ebeb-e5e0-4779-aef4-16210a00020f",
                "name": "Gillmans",
                "mobile": "",
                "office_telephone": "00000",
                "ooh_contact": "00000",
                "fax_number": "",
                "address_line_1": "St Oswalds Road",
                "address_line_2": "Gloucester",
                "address_line_3": "",
                "address_line_4": "",
                "postcode": "GL1 2SG",
                "email": "email@example.com",
                "contact": "",
                "position": "",
                "aov": "180.00",
                "engineer": false,
                "cc_on_new_job_emails": true,
                "can_add_quotes": false,
                "notes": "",
                "status": "1",
                "created": "2016-04-06 11:58:51",
                "modified": "2016-07-27 11:23:01",
                "status_text": "Active",
                "engineer_text": "No",
                "cc_on_new_job_emails_text": "Yes"
            },
            "Trade": [],
            "PostcodeArea": []
        },
        {
            "Supplier": {
                "id": "571e390f-91e8-4745-8f78-168b0a00020f",
                "name": "Kings",
                "mobile": "",
                "office_telephone": "00000", …
Run Code Online (Sandbox Code Playgroud)

javascript jquery json

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

如何更改 Laravel 通知的排序

我正在 Laravel 5 中打印模型的通知:

@foreach ($booking->notifications as $notification)                     
        <div class="message">
            <div class="myMessage">
              <p>{{ $notification->data[0])}}</p>
            </div>
        </div>                      
@endforeach
Run Code Online (Sandbox Code Playgroud)

这些通知按降序打印,有什么方法可以更改此设置,以便它们按升序打印?

Laravel 文档指出:

默认情况下,通知将按created_at时间戳排序

值得一提的是,该模型使用了多个通知类,因此我不确定这是否会影响排序行为?

php laravel laravel-5 laravel-notification

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

如果密码隐藏在 Laravel 5.5 单元测试中,如何模拟用户创建

我有一个单元验收测试,我在模拟用户的创建。

class UserAcceptanceApiTest extends TestCase
{
    use WithoutMiddleware;

    public function setUp()
    {
        parent::setUp();

        $this->User = factory(App\Models\User::class)->make([
            'id' => '999',
            'name' => 'Name',
            'email' => 'test@example.com',
            'password' => bcrypt('password'),
        ]);
        $this->User = factory(App\Models\User::class)->make([
            'id' => '999',
            'name' => 'Name',
            'email' => 'test@example.com',
            'password' => bcrypt('password'),
        ]);
        $user = factory(App\Models\User::class)->make();
        $this->actor = $this->actingAs($user);
    }



    public function testStore()
    {
        $response = $this->actor->call('POST', 'api/users', $this->User->toArray());
        $this->assertEquals(200, $response->getStatusCode());
        $this->seeJson(['id' => 999]);
    }

}
Run Code Online (Sandbox Code Playgroud)

我收到以下异常"Field 'password' doesn't have a default value

这是因为在我的User模型中,我有以下内容: …

php passwords laravel laravel-5

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

C#System.Object [,]

我写了一个小C#程序,打开一个Excel工作簿和一个工作表,迭代工作表中的所有单元格,并打印出每个单元格中的值.

我遇到的问题是控制台是打印System.Object[,]而不是实际的单元格值,它似乎是一个无限循环.

有谁知道为什么它不打印实际值?

这是我的计划:

using System;
using System.IO;
using System.Text;
using System.Windows;
using System.Windows.Forms;
using NetOffice.ExcelApi;
using NetOffice.ExcelApi.Enums;
using Excel = NetOffice.ExcelApi.Application;


namespace excelApp
{
    class Program
    {

        Excel excelApplication;
        Workbook workbook;
        Worksheet sheet;


        [STAThreadAttribute]
        public static void Main(string[] args)
        {
            Program p = new Program();
            p.openWorkSheet(@"C:\Users\HP\Desktop\Book1.xlsx", 2);
            p.printValues();
            Console.ReadKey(true);
        }


        private void openWorkSheet(string path, int worksheet)
        {

            excelApplication = new Excel
            {
                Visible = true,
                ScreenUpdating = true
            };

            try
            {
                workbook = excelApplication.Workbooks.Open(path);
                sheet = (Worksheet)workbook.Worksheets[worksheet]; …
Run Code Online (Sandbox Code Playgroud)

c# excel

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

Laravel无法将空值插入可空的DB字段

我的数据库表中有一个字段叫做service_3_total类型decimal(10,2).我已将此设置为nullable()迁移中的字段,因此在我的数据库中Null = Yes和Default = NULL.

如果我在提交表单时将此字段留空,则会收到以下错误:

一般错误:1366十进制值不正确:''列'service_3_total'

我不知道为什么我得到这个,因为我已经允许这个字段在数据库中为空.我认为这与它是十进制数据类型的事实有关.

有任何想法吗?

php mysql decimal laravel

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

Docker Compose 构建失败 - 退出代码:100 服务“laravel.test”构建失败:构建失败

执行后我收到以下错误docker-compose up -d

退出代码:100 服务“laravel.test”构建失败:构建失败

我从 Windows 10 中的 Bash 终端运行它。它适用于 Laravel PHP 应用程序。

这是我的docker-compose.yml文件:

# For more information: https://laravel.com/docs/sail
version: '3'
services:
    laravel.test:
        build:
            context: ./vendor/laravel/sail/runtimes/8.0
            dockerfile: Dockerfile
            args:
                WWWGROUP: '${WWWGROUP}'
        image: sail-8.0/app
        extra_hosts:
            - 'host.docker.internal:host-gateway'
        ports:
            - '${APP_PORT:-80}:80'
        environment:
            WWWUSER: '${WWWUSER}'
            LARAVEL_SAIL: 1
            XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}'
            XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}'
        volumes:
            - '.:/var/www/html'
        networks:
            - sail
        depends_on:
            - pgsql
            - redis
    pgsql:
        image: 'postgres:13'
        ports:
            - '${FORWARD_DB_PORT:-5432}:5432'
        environment:
            PGPASSWORD: '${DB_PASSWORD:-secret}'
            POSTGRES_DB: '${DB_DATABASE}'
            POSTGRES_USER: '${DB_USERNAME}'
            POSTGRES_PASSWORD: '${DB_PASSWORD:-secret}'
        volumes: …
Run Code Online (Sandbox Code Playgroud)

laravel docker windows-10 docker-compose

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