小编hoo*_*ola的帖子

如何在 Laravel 中使用控制器进行“部分”视图?

这是我的情况。我有一个我的layout.blade.php大部分页面都使用的。在这个文件中,我包含了一些部分片段,例如@include('partials.header'). 我正在尝试使用控制器将数据发送到我的header.blade.php文件,但我对这将如何工作感到困惑,因为它包含在每个扩展layout.blade.php.

我想要做的是在我的数据库中检索任何Game具有今天日期的记录(如果存在),并在标题中使用刀片显示详细信息。

我怎样才能使这项工作?

php oop laravel blade laravel-5

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

如何在自定义工具或卡片中使用 Nova 组件?

我目前正在开发一个 Laravel Nova 应用程序,我需要在其中添加大量自定义工具和卡片。我想在整个应用程序中保持一致性,所以简单地使用现有的 Laravel Nova 组件来处理表单输入等某些事情是有意义的。

我正在尝试使用nova/resources/js/fields.js文件中找到的几个不同的组件,但它不起作用。

在我的代码中,我只是引用了<form-date-time></form-date-time>组件,但我收到了错误:

Cannot read property 'attribute' of undefined
Cannot read property 'value' of undefined
Run Code Online (Sandbox Code Playgroud)

我不是 Vue 专家,所以我想我错过了一些非常清晰和明显的东西。在另一篇 SO 帖子中,有人提到我正在尝试使用 Novacheckbox组件做同样的事情。在那种情况下,需要将一个 prop 传递给组件才能使其正常运行,但是我没有看到需要传递给nova/resources/js/components/Form/DateTimeField.vue.

在我的自定义工具和卡片中使用 Nova 组件的任何帮助将不胜感激。谢谢你。

laravel vue.js vue-component laravel-nova

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

如何在Vue中有条件地添加类?

我有一个项目,我正在转换为Vue,我想知道如何有条件地将类添加到某些元素,具体取决于从数据库返回并使用Vue呈现的内容.这是我不使用Vue时应用程序的代码:

$(document).ready(function() {
  $('.task_element').each(function(index, element) {
    if ($(element).find(".task_priority").text().trim() === "high") {
      $(element).addClass('high');
    } else if ($(element).find(".task_priority").text().trim() === "medium") {
      $(element).addClass('medium');
    } else if ($(element).find(".task_priority").text().trim() === "low") {
      $(element).addClass('low');
    }
  });
});
Run Code Online (Sandbox Code Playgroud)

这很好用.但是,我想知道有没有办法更容易地与Vue这样做?或者我是否必须找到一种方法将其扔进我的Vue应用程序?

这是组件的一部分:

<p class="task_description">
  {{ task.description }} <span class="badge badge-pill">priority</span>
</p>
<p class="task_priority">
  {{ task.priority }}
</p>
Run Code Online (Sandbox Code Playgroud)

我想要做的是绑定徽章的样式(根据task_priority元素的值添加其中一个类,高,中或低).我怎么做到这一点?

javascript vue.js vue-component vuejs2

3
推荐指数
4
解决办法
7396
查看次数

如何使用PHP PDO解析MySQL数据库中的对象数据?

我在尝试从数据库返回对象数据时遇到了问题.我按照本教程构建了一个DB包装器,并一直在尝试扩展它的功能以满足我的需要.我的问题是,当我使用DB类"get"方法返回数据时,它还返回PDO对象本身的实例.我想知道如何解析这些数据,以便我只返回数据库中的对象,而不是数据库对象本身.我希望最终能够为每个对象显示不同的数据库值.

这是我的所有相关代码:

class DB {

private static $_instance = null; //stores instance of database
private $_pdo, 
        $_query, 
        $_error = false, 
        $_results, 
        $_count = 0;


private function __construct() {
    try {
        $this->_pdo = new PDO('mysql:host=' . Config::get('mysql/host') . ';dbname=' . Config::get('mysql/db'), Config::get('mysql/username'),  Config::get('mysql/password'));
    } catch(PDOException $e){
        die($e->getMessage());
    }
}


public static function getInstance() {
    if(!isset(self::$_instance)){
        self::$_instance = new DB();
    }
    return self::$_instance;
}

public function query($sql, $params = array()){
    $this->_error = false;
    if($this->_query = $this->_pdo->prepare($sql)) {
        $x = 1; …
Run Code Online (Sandbox Code Playgroud)

php mysql oop pdo

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

为什么 MySQL SUM 查询只返回一行?

我正在尝试创建一个 MySQL 查询来返回数据库中每个帐户的所有语句余额的总和。查询如下所示:

SELECT SUM(balance), handle FROM statement_versions
INNER JOIN statements ON statement_versions.statement_id = statements.id
INNER JOIN accounts ON statements.account_id = accounts.id;
Run Code Online (Sandbox Code Playgroud)

当我执行此操作时,它仅返回一行,其中包含一个合计余额和一个帐户(ID 为 1 的帐户)。我想要的是返回所有帐户及其汇总的报表余额。我将如何实现这一目标?

mysql sql database join

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

如何在 Laravel 中路由到 JSON 文件?

我想知道如何在 Laravel 项目中创建指向 JSON 文件的路由。我想要做的是GET来自 JSON 文件的数据,但不确定如何创建执行此操作的路由。这是我的代码:

function ajax_get_json(){
    var results = document.getElementById("results");
    var hr = new XMLHttpRequest();
    var url = "/products/products.json";
    hr.open("GET", url, true);
    hr.setRequestHeader("Content-type", "application/json", true);
    hr.onreadystatechange = function() {
        if(hr.readyState == 4 && hr.status == 200) {
            var data = JSON.parse(hr.responseText);
            document.getElementById("results").innerHTML = return_data;
            results.innerHTML = data.productName;
        }
    }
    hr.send(null);
    results.innerHTML = "requesting data....";
}
Run Code Online (Sandbox Code Playgroud)

当我尝试此操作时,出现 404 错误,并且我不确定如何创建到 JSON 文件的路由。这是我现在所拥有的:

Controller

public function getJSON() {

    return view('products.products.json');
}
Run Code Online (Sandbox Code Playgroud)

Routes

Route::get('/products', 'ProductController@getJSON');
Run Code Online (Sandbox Code Playgroud)

但这是行不通的。我怀疑urlof/products/products.json …

javascript ajax json laravel

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

如何为字段指定默认值 Laravel Nova

我想将资源字段的默认值设置为经过身份验证的用户的id. 我有一个名为 的模型,它与和Note具有一对多关系。GameUser

User hasMany Note
Game hasMany Note

Note belongsTo User
Note belongsTo Game
Run Code Online (Sandbox Code Playgroud)

在 Laravel Nova 中,我的注释字段如下所示

ID::make()->sortable(),
Text::make('Note', 'note')->onlyOnIndex(),
Textarea::make('Note', 'note')->alwaysShow(),
BelongsTo::make('Game', 'game')->hideWhenCreating()->hideWhenUpdating(),
BelongsTo::make('Created By', 'user', 'App\Nova\User')->hideWhenCreating()->hideWhenUpdating(),
DateTime::make('Created At', 'created_at')->hideWhenCreating(),
DateTime::make('Updated At', 'updated_at')->hideWhenCreating(),
Run Code Online (Sandbox Code Playgroud)

因为我引用Nova 资源Note上的Game,所以当我创建 时Note,该game_id列已正确填充。但是,我希望该user_id列是经过身份验证的用户的值。它似乎不是这样工作的,我该如何实现呢?

relationship laravel laravel-nova

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