что может быть не так, так как ошибка не отображается и код не обрабатывается: enum in Laravel - PullRequest
0 голосов
/ 28 февраля 2019

Миграция В моей миграции, я передал в базу данных

$table->enum('product_name', ['chocolate', 'Candy','biscuits', 'Berry']); 
$table->string('description');
$table->string('product_no');
$table->timestamps();

, в моей модели это ниже заполняемого и функция для выбора выбора.

protected $fillable =[
      'product_no','description'
    ];
protected $product_name = ['chocolate', 'Candy','biscuits', 'Berry'];

public function getProduct_name()
    {
        return $this->product_name;
    }

Проблема в том, что я не знаю, как справиться с этим в контроллере и почтальоне.Это не отображает никакой ошибки

public function store(Request $request)
        {
            $this->validate($request, [

                'product_no' => 'nullable|product_no',
                'description' => 'required|string',
                           ]);

            $product = new Product();

            $product->product_no = $request->product_no;
            $product->description = $request->description;
            $product->product_name = $request->$model->getProduct_name();

            if (auth()->user()->products()->save($product))
                return response()->json([
                    'success' => true,
                    'data' => $product->toArray()
                ]);
            else
                return response()->json([
                    'success' => false,
                    'message' => 'product could not be added'
                ], 500);
        }

Чего я хочу достичь, это создать интерфейс в Angular с выпадающим списком, чтобы выбрать product_name (из списка с жестким кодом), а description и product_noзаливка.Однако от Почтальона я только что ввел значения для трех полей: product_name, description и product_no

1 Ответ

0 голосов
/ 28 февраля 2019

Кажется, вы забыли заменить имена методов и переменных при копировании votes кода

$product = new Product();
$product->product_no = $request->product_no;
$product->description = $request->description;
$product->product_name = $request->$model->getProduct_name();

if (auth()->user()->votes()->save($vote))
--------------------^^^^^^^-------^^^^^--
    return response()->json([
         'success' => true,
         'data' => $product->toArray()
     ]);

Это должно быть

if (auth()->user()->products()->save($product))

Также есть другое поле (product_name) что вы пытаетесь сохранить, но это не заполняется

protected $fillable =[
      'product_no','description', 'product_name'
    ];

А также, возможно, вы захотите использовать тот же шаблон при именовании переменных и методов.Вы можете сказать getProductName или get_product_name вместо getProduct_name.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...