Laravel form html con il metodo PUT PUT percorsi

Ho nella mia percorsi :

+--------+---------------------------+--------------+---------------------------                                                                                                                ---------+----------------+---------------+
| Domain | URI                       | Name         | Action                                                                                                                                             | Before Filters | After Filters |
+--------+---------------------------+--------------+---------------------------                                                                                                                ---------+----------------+---------------+
|        | GET|HEAD /                |              | postcontroller                                                                                                                                     | auth           |               |
|        | GET|HEAD login            |              | [email protected]                                                                                                                             |                |               |
|        | POST login                |              | [email protected]                                                                                                                             |                |               |
|        | GET|HEAD logout           |              | [email protected]                                                                                                                            |                |               |
|        | GET|HEAD post             | post.index   | [email protected]                                                                                                                               |                |               |
|        | GET|HEAD post/create      | post.create  | [email protected]                                                                                                                              |                |               |
|        | POST post                 | post.store   | [email protected]                                                                                                                               |                |               |
|        | GET|HEAD post/{post}      | post.show    | [email protected]                                                                                                                                |                |               |
|        | GET|HEAD post/{post}/edit | post.edit    | [email protected]                                                                                                                                |                |               |
|        | PUT post/{post}           | post.update  | [email protected]                                                                                                                              |                |               |
|        | PATCH post/{post}         |              | [email protected]                                                                                                                              |                |               |
|        | DELETE post/{post}        | post.destroy | [email protected] 

Ora, voglio fare un form html che utilizza il metodo. Qui è il mio codici:

<form class="col-md-12" action="<?php echo URL::to('/');?>/post/<?=$post->postID?>" method="put">
    <div class="form-group">
        <textarea type="text" class="form-control input-lg" placeholder="Text Here" name="post"><?=$post->post?></textarea>
    </div>
    <div class="form-group">
        <button class="btn btn-primary btn-lg btn-block" type="submit" value="Edit">Edit</button>
    </div>
</form>     

Ma non funziona per inviare il form in post.edit.

Ho cercato su google e ho ottenuto una soluzione che devo usare

{{form:...etc

Ma, voglio la maschera è ancora possibile fare con lo stile CSS.
C’è qualche soluzione ragazzi?
Grazie



5 Replies
  1. 35

    È POSSIBILE aggiungere css clases, e qualsiasi tipo di attributi è necessario lama modello, provate questo:

    {{ Form::open(array('url' => '/', 'method' => 'PUT', 'class'=>'col-md-12')) }}
    .... wathever code here
    {{ Form::close() }}

    Se non volete passare la lama modo è possibile aggiungere un input nascosto. Questa è la forma Laravel, qualsiasi modo:

    Nota: Dal momento che l’HTML solo forme di sostegno POST e GET, PUT e DELETE
    i metodi per essere contraffatti con l’aggiunta automatica di un _method campo nascosto
    per la vostra forma. (Laravel docs)

    <form class="col-md-12" action="<?php echo URL::to('/');?>/post/<?=$post->postID?>" method="POST">
    
    <!-- Rendered blade HTML form use this hidden. Dont forget to put the form method to POST -->
    
    <input name="_method" type="hidden" value="PUT">
    
    <div class="form-group">
        <textarea type="text" class="form-control input-lg" placeholder="Text Here" name="post"><?=$post->post?></textarea>
    </div>
    <div class="form-group">
        <button class="btn btn-primary btn-lg btn-block" type="submit" value="Edit">Edit</button>
    </div>
    </form>     
    • Grazie mille : ) Ora Funziona !
    • Nessuno di questi metodi funziona in v5.4. Forme & pagina HTML linkato sopra è vuoto quando si modifica la versione 5.4,
  2. 34

    Se si utilizza elemento Form HTML invece Laravel Form Builder, è necessario inserire method_field tra il
    modulo di tag di apertura e di chiusura di fine. Facendo questo si può definire in modo esplicito form method tipo.

    <form>
    {{ method_field('PUT') }}
    </form>
  3. 13

    Basta usare come questa da qualche parte all’interno del modulo

    @method('PUT')
    • questo è ufficiale per laravel 5.7
  4. 11

    È molto facile, basta usare method_field('PUT') come questo:

    HTML:

    <form action="{{ route('route_name') }}" method="post">
        {{ method_field('PUT') }}
        {{ csrf_field() }}
    </form>

    o

    <form action="{{ route('route_name') }}" method="post">
        <input type="hidden" name="_method" value="PUT">
        <input type="hidden" name="_token" value="{{ csrf_token() }}">
    </form>

    Riguarda!

  5. 0

    a vostro parere, di sostituzione della lama per

    {{ Form::open(['action' => '[email protected]', 'method' => 'PUT', 'class' = 'your class here']) }}
    
    <div>
    {{ Form::textarea('textareanamehere', 'default value here', ['placeholder' => 'your place holder here', 'class' => 'your class here']) }}
    </div>
    
    <div>
    {{ Form::submit('Update', ['class' => 'btn class here'])}}
    </div>
    
    {{ Form::close() }}

    in realtà è possibile utilizzare il formato raw come la tua domanda. ma io non è consigliato. dan itulah salah satu alasan agan belajar quadro, semplice, dan cepat. così kenapa pake forma grezza kalo ada yang lebih mudah. hehe. orgoglioso di essere indonesiano.

    di riferimento (laravel forma della lama)[http://laravel-recipes.com/recipes/124/opening-a-new-html-form%5D

Lascia un commento