Skip to main content

How to use datatable in laravel 8 ?

Use datatable in laravel 8


<?php


/* =====In Controller file===== */

use DataTables;   


   public function ajax_get_blogs(Request $request)

    {

        if ($request->ajax()) {

            $data = Blog::select('*');

            return Datatables::of($data)

                    ->addIndexColumn()

                    ->addColumn('featured_image', function($row){


                        if($row->featured_image == ''){ $featured_image = asset("upload/image-not-found.jpg"); } else {  $featured_image =  asset("upload/" . $row->featured_image); }


                        $featured_image_view = '<img src="'. $featured_image .'">';

 

                         return $featured_image_view;

                         })


                    ->addColumn('action', function($row){


                           $btn = '<a href="javascript:void(0)" data-blog_id = ' . $row->id . ' class="edit btn btn-primary btn-sm">View</a>';

    

                            return $btn;

                    })

                    ->rawColumns(['action','featured_image'])

                    ->make(true);

        }

        

        return view('admin.blogs.blogs-list');

    }

/* =====In Blade file===== */

?>

<html>

    <head>

        <style>

            img {

                border: 1px solid red;

                width: 200px;

                height: 150px;

                object-fit: cover;

            }

            img[src=""] {

                background:url("http://localhost/laravel-testing/upload/images/blogs/build.jpg");

                object-fit: cover;

            }

        </style>

        <meta name="csrf-token" content="{{ csrf_token() }}">  

    </head>

    <body>

    <table id="blog_post_table">

        <thead>

            <tr>

                <th>No</th>

                <th>Title</th>

                <th>Description</th>

                <th>Image</th>

                <th width="100px">Action</th>

            </tr>

        </thead>

        <tbody>            

        </tbody>

    </table>

<script src="https://code.jquery.com/jquery-3.6.3.min.js" integrity="sha256-pvPw+upLPUjgMXY0G+8O0xUf+/Im1MZjXxxgOcBQBXU=" crossorigin="anonymous"></script>

<script type="text/javascript" charset="utf8" src="https://cdn.datatables.net/1.13.2/js/jquery.dataTables.js"></script>

<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.13.2/css/jquery.dataTables.css">

<script>

    jQuery(document).ready(function($){

        $(function () {

            var table = $('#blog_post_table').DataTable({

            processing: true,

            serverSide: true,

            ajax: "{{ route('blogs.AjaxGetBlogs') }}",

            columns: [

                {data: 'id', name: 'id'},

                {data: 'title', name: 'title'},

                {data: 'description', name: 'description'},

                {data: 'featured_image', name: 'featured_image', orderable: false, searchable: false},

                {data: 'action', name: 'action', orderable: false, searchable: false},

            ]

        });


        });

    });

</script>

</body>

</html>

Comments

Popular posts from this blog

How to use inner html value or data in php from javascript(innerHTML)?

 use inner html value or data in php from javascript(innerHTML)? <html> <body> <p id="demo">use inner html value in php(innerhtml)</p> <script>   var jassi = document.getElementById("demo").innerHTML;   //document.write(jassi); </script> <?php $jassi = '<script>document.write(jassi);</script>'; echo $jassi; ?> </body> </html>

How to get store data from WCFM(Best Multi Vendor Marketplace) Plugin?

 Get store data from WCFM(Best Multi Vendor Marketplace) Plugin. global $WCFM, $WCFMmp, $wp, $WCFM_Query, $post; $store_id = ''; if ( isset( $attr['id'] ) && !empty( $attr['id'] ) ) { $store_id = absint($attr['id']); } if (  wcfm_is_store_page() ) { $wcfm_store_url = get_option( 'wcfm_store_url', 'store' ); $store_name = apply_filters( 'wcfmmp_store_query_var', get_query_var( $wcfm_store_url ) ); $store_id  = 0; if ( !empty( $store_name ) ) { $store_user = get_user_by( 'slug', $store_name ); } $store_id    = $store_user->ID; } $user_id = $store_id;  $vendor_data = get_user_meta( $user_id, 'wcfmmp_profile_settings', true ); $street_1 = $vendor_data['address']['street_1']; $street_2 = $vendor_data['address']['street_2']; $city     = $vendor_data['address']['city']; $zip      = $vendor_data['address']['zip&#

How to create login with phone number in woocommerce wordpress?

Create login with phone number in woocommerce wordpress. function wooc_extra_register_fields() {?>        <p class="form-row form-row-wide">        <label for="reg_billing_phone"><?php _e( 'Phone', 'woocommerce' ); ?><span class="required">*</span></label>        <input type="text" class="input-text" name="billing_phone" id="reg_billing_phone" value="<?php esc_attr_e( $_POST['billing_phone'] ); ?>" />        </p>            <?php  }  add_action( 'woocommerce_register_form_start', 'wooc_extra_register_fields' );  function wooc_validate_extra_register_fields( $username, $email, $validation_errors ) { if ( isset( $_POST['billing_phone'] ) ) {    $hasPhoneNumber= get_users('meta_value='.$_POST['billing_phone']);    if ( !empty($hasPhoneNumber)) {      $validation_er