duano3557 2019-02-19 06:39
浏览 66
已采纳

路由未定义视图:E:\ xampp \ htdocs \ offices esources \ views \ admin \ offices \ create.blade.php错误

I am working on a project in which I want to save addresses of offices and the offices create.blade have country and city dependent drop-down for dependent drop-down I did the following code using JavaScript for AJAX call, but when I am running it, I am getting "Route not define error in office.create.blade.

Below is the for offices.create.blade

@section('scripts')
        <script type="text/javascript">
            $("#country").change(function(){
                $.ajax({
                    url: "{{ route('admin.cities.get_by_country') }}?country_id=" + $(this).val(),
                    method: 'GET',
                    success: function(data) {
                        $('#city').html(data.html);
                    }
                });
            });
        </script>
    @endsection
<div class="panel panel-default">
        <div class="panel-heading">
            @lang('quickadmin.qa_create')
        </div>
        
        <div class="panel-body">
            <div class="row">
                <div class="col-xs-12 form-group">
                    {!! Form::label('country_id', trans('quickadmin.offices.fields.country').'*', ['class' => 'control-label']) !!}
                    {!! Form::select('country_id', $countries, old('country_id'), ['class' => 'form-control select2', 'required' => '']) !!}
                    <p class="help-block"></p>
                    @if($errors->has('country_id'))
                        <p class="help-block">
                            {{ $errors->first('country_id') }}
                        </p>
                    @endif
                </div>
            </div>
            <div class="row">
                <div class="col-xs-12 form-group">
                    {!! Form::label('city_id', trans('quickadmin.offices.fields.city').'*', ['class' => 'control-label']) !!}
                    <select name="city_id" id="city" class="form-control">
                    <option value="">{{ trans('quickadmin.qa_please_select') }}</option>
                </select>
                    <p class="help-block"></p>
                    @if($errors->has('city_id'))
                        <p class="help-block">
                            {{ $errors->first('city_id') }}
                        </p>
                    @endif
                </div>
            </div>
            <div class="row">
                <div class="col-xs-12 form-group">
                    {!! Form::label('address', trans('quickadmin.offices.fields.address').'*', ['class' => 'control-label']) !!}
                    {!! Form::text('address', old('address'), ['class' => 'form-control', 'placeholder' => '', 'required' => '']) !!}
                    <p class="help-block"></p>
                    @if($errors->has('address'))
                        <p class="help-block">
                            {{ $errors->first('address') }}
                        </p>
                    @endif
                </div>
            </div>
            
        </div>
    </div>

CitiesController.php code

public function get_by_country(Request $request)
    {
        abort_unless(\Gate::allows('city_access'), 401);

        if (!$request->country_id) {
            $html = '<option value="">'.trans('quickadmin.qa_please_select').'</option>';
        } else {
            $html = '';
            $cities = City::where('country_id', $request->country_id)->get();
            foreach ($cities as $city) {
                $html .= '<option value="'.$city->id.'">'.$city->name.'</option>';
            }
        }

        return response()->json(['html' => $html]);
    }

OfficeController.php code

public function perma_del($id)
    {
        if (! Gate::allows('office_delete')) {
            return abort(401);
        }
        $office = Office::onlyTrashed()->findOrFail($id);
        $office->forceDelete();

        return redirect()->route('admin.offices.index');
    }

define route in web.php as below

Route::get('cities/get_by_country', 'CitiesController@get_by_country')->name('admin.cities.get_by_country');

I don't know where I did mistake? looking forward for helping me throw this Thanks

</div>
  • 写回答

1条回答 默认 最新

  • dongqie2355 2019-02-19 07:32
    关注

    You can try to use raw url first but make sure you specify fore slash before the url like this: /cities/get_by_country.

    This treats the url as root based.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 stm32流水灯+呼吸灯+外部中断按键
  • ¥15 将二维数组,按照假设的规定,如0/1/0 == "4",把对应列位置写成一个字符并打印输出该字符
  • ¥15 NX MCD仿真与博途通讯不了啥情况
  • ¥15 win11家庭中文版安装docker遇到Hyper-V启用失败解决办法整理
  • ¥15 gradio的web端页面格式不对的问题
  • ¥15 求大家看看Nonce如何配置
  • ¥15 Matlab怎么求解含参的二重积分?
  • ¥15 苹果手机突然连不上wifi了?
  • ¥15 cgictest.cgi文件无法访问
  • ¥20 删除和修改功能无法调用