从 api 获取空白数据,即使数据可用于在数据库中获取
Posted
技术标签:
【中文标题】从 api 获取空白数据,即使数据可用于在数据库中获取【英文标题】:get blank data from api even data is available for fetch in database 【发布时间】:2020-05-26 18:27:33 【问题描述】:大家好,现在我正在开发 laravel 项目,在这个项目中,我制作了 2 个 api,其中一个运行得很好,就像我从数据库中准确获取所有数据一样,但是在第二个 api 中,我得到空白数据意味着两个 api 都没有相同但只是从一个 api 我从 ID 获取数据,在第二个 api 我从电子邮件获取数据请帮助我。
这是我的 api.php 代码
<?php
use Illuminate\Http\Request;
/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/
Route::middleware('auth:api')->get('/user', function (Request $request)
return $request->user();
);
// routes/api.php
// POST /api/post?api_token=UNIQUE_TOKEN
Route::post('post', 'Api\PostController@store')->middleware('auth:api');
Route::get('/getemail/"email"','EmailController@databyemail');
and it's my EmailController Code
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\email;
class EmailController extends Controller
public function databyemail($email)
$data = new email();
$data = email::find($email);
return response()->json($data);
and finally it is my email model code
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class email extends Model
protected $table = 'users';
protected $fillable = ['surname','first_name','last_name','username','email','password','language','contact_no','address','remember_token','business_id','status'];
请帮助我为什么我没有从数据库中得到任何东西
提前致谢
【问题讨论】:
【参考方案1】:我认为你应该修复你的路线,你不需要为变量使用“”标记。
Route::get('/getemail/email','EmailController@databyemail');
就这样使用吧。
另外,find 可以与主键一起使用,
代替:
$data = email::find($email);
用途:
$data = email::where('email', $email)->first();
【讨论】:
$data = email::find($email);您正在使用 $email 进行查找,您只能在查找中使用主键,而不是使用$data = email::firstWhere('email', $email);
亲爱的,当我写 $data = email::firstWhere('email', $email);并删除 $data = email::find($email);所以我得到 500 的错误
那就试试吧,$data = email::where('email', $email)->first();
谢谢你,亲爱的,它的工作就像一个魅力,非常感谢你让我开心
好吧,我还有一个关于这个问题的疑问,你能回答我吗?或者我需要创建新问题以上是关于从 api 获取空白数据,即使数据可用于在数据库中获取的主要内容,如果未能解决你的问题,请参考以下文章
我尝试从 multipart api 上传文件和文本数据,但即使我使用 multer 也无法获取文件
使用 alomafier 请求调用 api 在响应中获取数据,但在请求下方它会变为空白
Flutter - 无法将所有 json 数据从 api 响应保存到 Iterable List 编辑:(无法从可迭代列表中获取数据)