Lỗi khi kết nối Laravel và MongoDB
Khái niệm Collection trong MongoDB tương đương với Table trong MySQL, nên chắc bạn sử dụng hàm collection()
với DbConnection là Mysql sẽ gặp lỗi đó.
Bạn thử đổi sang dùng hàm table()
xem (suyngam)
Iframe trên Iphone 6S Plus
Bác đưa demo lên, mọi người inspect lên debug cho dễ.
Set value trong Form [Antd]
Bác thử cách này xem
import React, { Component } from "react";
import { Input } from "antd";
export class InputComponent extends Component {
render() {
return <Input {...this.props} />;
}
}
export default InputComponent;
Sử dụng Laravel Passport với API
Cái flow Authorization Code không đáp ứng được mong muốn của bác rồi. Bác tìm hiểu thử cái flow Implicit grant thử xem. Docs của cái flow này ở Laravel Passport này bác.
Laravel Window authentication
Bạn có thể tham khảo package này xem
Không import được bootstrap vào project nextjs
Hình như là thiếu css-loader
, bạn thử cài thêm nó vào xem https://www.npmjs.com/package/css-loader
Tìm file đã được backup mới nhất trong thư mục backup sử dụng php như thế nào?
Bạn dùng https://www.php.net/manual/en/function.glob.php để lấy tất cả các file backup có đuôi *.dmp ra. Sau đó lần lượt so sánh thời gian lần cuối bị sửa của các file bằng https://www.php.net/manual/en/function.filemtime.php để tìm ra file mới sửa gần nhất.
Order pizza, khi có hai người order cùng lúc chiếc bánh pizza cuối cùng tại cửa hàng.
Chia đôi cái bánh, mỗi người một nửa nhé bạn
How to add multiple AND conditions in laravel query?
$query->where([
['col1', '=', 'val1'],
['col2', '=', 'val2'],
])->get()
lỗi CORS giữa laravel + angular
Thay vì config trong file .htaccess
thì bạn thử dùng middleware cho endpoint
<?php namespace App\Http\Middleware;
use Closure;
class CORS {
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
header("Access-Control-Allow-Origin: *");
// ALLOW OPTIONS METHOD
$headers = [
'Access-Control-Allow-Methods'=> 'POST, GET, OPTIONS, PUT, DELETE',
'Access-Control-Allow-Headers'=> 'Content-Type, X-Auth-Token, Origin'
];
if($request->getMethod() == "OPTIONS") {
// The client-side application can set only headers allowed in Access-Control-Allow-Headers
return Response::make('OK', 200, $headers);
}
$response = $next($request);
foreach($headers as $key => $value)
$response->header($key, $value);
return $response;
}
}
Một số câu hỏi liên quan đến Nuxtjs ( Vuejs)
Câu hỏi 2: Với Vuejs ở file resources/js/bootstrap.js đã có config mặc cho csrf rùi nên nếu bạn không sửa file này thì mặc định axios đã có csrf trong mỗi request
let token = document.head.querySelector('meta[name="csrf-token"]');
if (token) {
window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
} else {
console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
}
hỏi về thông báo thành công khi dùng ajax
1. Link to toastr.css <link href="toastr.css" rel="stylesheet"/>
2. Link to toastr.js <script src="toastr.js"></script>
3. Use toastr to display a toast for info, success, warning or error
// Display an info toast with no title
toastr.info('Are you the 6 fingered man?')
join query builder trong laravel
Bạn tạo model Product, Tag, trong đó có Product quan hệ 1-n với model Tag.
class Product extends Model
{
/**
* The roles that belong to the user.
*/
public function tags()
{
return $this->belongsToMany('App\Tags');
}
}
Khi query Product thì dùng thêm Eager Loading để lấy kèm theo các Tag của nó nữa
$products = App\Product::with('tags')->get();
Bạn có thể tham khảo ở đây để rõ hơn nhé https://laravel.com/docs/5.7/eloquent-relationships#constraining-eager-loads
Tạo images layout giống như Unsplash
Unsplash có api lấy list photos trong 1 lần request mà nhỉ? Bạn lấy 1 array ảnh về rồi đặt từng url vào từng column 🤔
Tại sao khi build trang web phía browser luôn convert lại tên của các js css về dạng 1 ký tự ?
Những file đó đã được Minify thành như vậy đó bạn. Mục đích của việc Minify để giảm kích thước của các file js đó đi, giúp client load những file đó nhanh hơn
Tại sao khi click lần đầu tiên hành động chưa thực thi ngay
Bởi vì trong lần đầu tiên load, sau khi click vào thẻ div thì mới gán sự kiện onClick cho component Accor.
React js, Framework,
Trên trang chủ của Reactjs có nói
React A JavaScript library for building user interfaces
nên chắc không ai muốn dùng Reactjs làm back-end đâu. Backend bạn có thể sử dụng Nodejs chẳng hạn
How to add line-break in title attribute.
Nếu bạn sử dụng Tooltip của Bootstrap, bạn có thể thêm vào element đó data-html="true"
, ở title
bạn có thể sử dụng các thẻ của html để break line