【问题标题】:How To Show Data as Option of Different DB Table如何将数据显示为不同数据库表的选项
【发布时间】:2018-10-23 21:25:11
【问题描述】:

我正在使用Laravel 5.7VueJs 2.5.*。我正在构建一个发票应用程序。

我有一张Vendors 的表格,需要在我的创建发票 表单中显示所有Vendors(例如,此发票与所选的Vendor 相关)。

这是我的<script> 代码:

<script>
  export default {
    data() {
      return {
        ticketInvoices: {},
        ticketInvoiceItems: [],
        form: new Form({
          id: "",
          vendor_id: "",
          ticket_invoice_no: "",
          ticket_invoice_date: "",
          ticket_invoice_grand_total: "",
        })
      };
    },
    methods: {
      addItems() {
        this.ticketInvoiceItems.push({
          id: "",
          passenger_name: "",
          ticket_no: "",
          flight_no: "",
          departure_date: "",
          sub_total: ""
        });
      },
      removeItems(pos) {
        this.ticketInvoiceItems.splice(pos, 1);
      },
      </script>

需要在此处显示Vendor 列表:

<div class="form-group">
  <label for="vendor">Select Vendor</label>
  <select class="form-control" :class="{ 'is-invalid': form.errors.has('vendor') }">
    <option value="" disabled selected>Please Select Vendor</option>
    <option>All Vendors Name</option>
  </select>
  <has-error :form="form" field="vendor"></has-error>
</div>

【问题讨论】:

    标签: javascript html laravel vuejs2 laravel-5.7


    【解决方案1】:

    我假设您有一个控制器可以返回所有供应商的数据。类似的东西;

    public function index()
    {
       $vendors = Vendor::all();
       return $vendors;
    }
    

    这会返回一个包含所有供应商的 JSON 响应。

    在你的html代码中,你可以这样做;

    <div class="form-group">
        <label for="vendor">Select Vendor</label>
        <select class="form-control" :class="{ 'is-invalid': form.errors.has('vendor')}">
            <option value="" disabled selected>Please Select Vendor</option>
            <option v-for="vendor in vendors">{{ vendor }}</option>
        </select>
        <has-error :form="form" field="vendor"></has-error>
    </div>
    

    在你的 Vue 代码中;

    data () {
        return {
          vendors: null
        }
    },
    mounted () {
    axios
      .get('https://example.com/api/vendors')
      .then(response => (this.vendors = response))
    }
    

    【讨论】:

    • 他们是否需要v-model 在我的&lt;select&gt; 中使用Vendor ID @PeterSowah 向我的DB 发送数据...???是的,我可以在Invoice 表单中看到我所有的vendors 列表。谢谢。
    • 如果我的帖子/答案有帮助,请将其标记为答案。是的,您可以从表单输入中创建一个对象。在这种情况下,您将使用 v-model
    • 对不起,我忘了标记它:P BTW 谢谢@PeterSowah
    猜你喜欢
    • 1970-01-01
    • 2012-06-24
    • 2019-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多